首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi2.cpp。请完成函数fun(char*data),此函数的功能是,找出字符串数组中最小的ASCII值,如果有相同变量,则输出最后一个所在的位置;如果字符串为空,则返回一1;或者不存在时也返回一1。 注
使用VC6打开考生文件夹下的源程序文件modi2.cpp。请完成函数fun(char*data),此函数的功能是,找出字符串数组中最小的ASCII值,如果有相同变量,则输出最后一个所在的位置;如果字符串为空,则返回一1;或者不存在时也返回一1。 注
admin
2020-07-23
65
问题
使用VC6打开考生文件夹下的源程序文件modi2.cpp。请完成函数fun(char*data),此函数的功能是,找出字符串数组中最小的ASCII值,如果有相同变量,则输出最后一个所在的位置;如果字符串为空,则返回一1;或者不存在时也返回一1。
注意:请勿改动主函数main与其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。计算数字如果第一个字母最小,则返回0。依次增加。
1 #include
2 int fun(char*data)
3 {
4
5 }
6 void main()
7 {
8 char Str[1024];
9 cout<<"请输入一行英文字符串:\n";
10 cin.getline(str,1024);
11 cout<<"最小的字母出现在距离头部"<
12 }
选项
答案
1 int MinPos=0 ; //初始化最小值位置 2 if(data==NULL) //判断输入字符串是否为空 3 return -1; 4 char MinData=data[0];//设置字符串第一个字符为最小值 5 if(MinData==0) //判断第一个字符是否存在 6 return一1 ; 7 for(int i=1 ; data[i]!=0 ; i++) 8 { 9 if(data[i]<=MinData) 10 { 11i MinData=data[i]; //逐个判断每个字母是否小于标记字符 12 MinPos=i; //最小值位置 13 } 14 } 15 return MinPos ;
解析
(1)该程序功能是找出字符串数组中最小的ASCII值。它的解题思路,用最小值变量标记第一个待找字符,把所有待找字符和标记字符逐个进行比较,并标记其当前最小值及其所在位置,从而找出最小值。
(2)从已给部分源程序的main主函数开始入手,核心函数int fun(char*data)中的data参数为输入的字符串数组,其中MinPos为最小值位置。
[解题思路]
(1)MinPos变量首先指向字符串data的第一个字符,同时将标志位MinPos初始值赋为0。
(2)然后利用for循环对每一个当前字符与MinPos标记的字符进行比较。
(3)循环中将求得的最小数据data
赋值给MinData,并将该数据项数组标志位赋给标志位MinPos。
转载请注明原文地址:https://kaotiyun.com/show/kFyp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有如下程序:#includeusingnamespacestd;classTV{public:TV(ints=41):size(s){}
有如下类定义:classMyClass{public:private:intdata;};若要为MyClass类重载流输入运算符">>",使得程序中可以"cin>>obj;"的形式改变MyClass类的对象ob
运算符重载是对已有的运算符赋予多重含义,因此()。
下列关于C++函数的说明中,正确的是()。
下列字符串中,不可以用做C++标识符的是()。
有如下程序:#includeusingnamespacestd;classAA{intk;protected:intn;voidsetK(intk){this->k=k;}public:voidsetN(intn
若要对类Value中重载的类型转换运算符long进行声明,下列选项中正确的是
下列语句中,错误的是()。
下列选项中,与实现运行时多态性无关的概念是()。
随机试题
A.泻水逐饮,消肿散结B.泻下逐水,破血消癥C.泻下,逐水,去积,杀虫D.泻水逐饮,祛痰止咳,杀虫疗疮E.峻下冷积,逐水退肿,祛痰利咽,蚀疮
Wetendtonoticethetimesthatsomethingremarkableoccurred,whileignoringallthetime________thatnothingremarkablehappe
八纲中的虚实辨证是辨别疾病的
女性,38岁,未婚。因怕热、多汗消瘦2月余来诊。体检:甲状腺I度肿大,杂音(一),心率120次/min,律齐。甲状腺吸碘率:3小时36%;24小时90%。此时最佳处理为
胞宫的功能是
某股份有限公司普通股现行市价为每股20元,现准备增发60000股,预计筹资费用率为5%,第一年发放股利为每股2元,以后每年股利增长率为6%。试计算该公司本次增发普通股的资金成本为()。
真理的相对性通常也称作相对真理,人们在任何特定历史条件下都不能获得真正的真理,真理是不可知的。()
[*]
Bysomeestimates,thereareasmanyas12millionillegalimmigrantsintheUnitedStates,toilinginfarmfields,restaurantk
PepperSchwartzputsherpersonalaffairsintoherbookbecausetheyare______.
最新回复
(
0
)