欢迎来到天天文库
浏览记录
ID:39582224
大小:37.97 KB
页数:17页
时间:2019-07-06
《华为上机程序题》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、char*outstr=(char*)malloc(len*sizeof(char));#include7..输入一串字符,只包含”0-10″和”,”找出其中最小的数字和最大的数字(可能不止一个),输出最后剩余数字个数。如输入“3,3,4,5,6,7,7″#include#include#include voidmain(){ charstr[100]; printf(“输入一组字符串:”); scanf(“%s”,&str); intlen=str
2、len(str); intarray[100]; intcount=0; for(inti=0;i=’0′&&str[i]<=’9′) array[count++]=str[i]-’0′; } array[count]=’ ′; intresult=count; intmin=array[0]; intmax=array[0]; for(intj=0;j3、maxarray[j]) min=array[j]; } for(intk=0;k4、及格线,要求如下:(1)及格线是10的倍数;(2)保证至少有60%的学生及格;(3)如果所有的学生都高于60分,则及格线为60分输入:输入10个整数,取值0~100输出:输出及格线,10的倍数#includevoidbubblesort(intarr[]){ inti,j,temp; for(i=0;i<10;i++) for(j=0;j<9-i&&arr[j]>arr[j+1];j++) { temp=arr[j]; arr[j]=arr[j+1]; arr[j+1]=temp; }} intGe5、tPassLine(inta[]){ bubblesort(a); if(a[0]>=60) return60; elsereturn(((int)a[4]/10)*10);} main(){ inta[10]={0}; intresult; printf(“请随机输入10个成绩(0-100):”); scanf(“%d%d%d%d%d%d%d%d%d%d”,&a[0],&a[1],&a[2],&a[3],&a[4],&a[5],&a[6],&a[7],&a[8],&a[9]); printf6、(“”); result=GetPassLine(a); printf(“及格为:%d”,result); return1;}14.字串转换问题描述:将输入的字符串(字符串仅包含小写字母’a'到’z'),按照如下规则,循环转换后输出:a->b,b->c,…,y->z,z->a;若输入的字符串连续出现两个字母相同时,后一个字母需要连续转换2次。例如:aa转换为bc,zz转换为ab;当连续相同字母超过两个时,第三个出现的字母按第一次出现算。要求实现函数:voidconvert(char*input,char*output)【输入】c7、har*input,输入的字符串【输出】char*output,输出的字符串【返回】无#include#include#includevoidconvert(char*input,char*output){ if(input==NULL) return; chartemp=’ ′;intlen_input=strlen(input); inti; intflag=0; for(i=0;i8、output[i]=(input[i]-’a'+1)%26+’a'; te
3、maxarray[j]) min=array[j]; } for(intk=0;k4、及格线,要求如下:(1)及格线是10的倍数;(2)保证至少有60%的学生及格;(3)如果所有的学生都高于60分,则及格线为60分输入:输入10个整数,取值0~100输出:输出及格线,10的倍数#includevoidbubblesort(intarr[]){ inti,j,temp; for(i=0;i<10;i++) for(j=0;j<9-i&&arr[j]>arr[j+1];j++) { temp=arr[j]; arr[j]=arr[j+1]; arr[j+1]=temp; }} intGe5、tPassLine(inta[]){ bubblesort(a); if(a[0]>=60) return60; elsereturn(((int)a[4]/10)*10);} main(){ inta[10]={0}; intresult; printf(“请随机输入10个成绩(0-100):”); scanf(“%d%d%d%d%d%d%d%d%d%d”,&a[0],&a[1],&a[2],&a[3],&a[4],&a[5],&a[6],&a[7],&a[8],&a[9]); printf6、(“”); result=GetPassLine(a); printf(“及格为:%d”,result); return1;}14.字串转换问题描述:将输入的字符串(字符串仅包含小写字母’a'到’z'),按照如下规则,循环转换后输出:a->b,b->c,…,y->z,z->a;若输入的字符串连续出现两个字母相同时,后一个字母需要连续转换2次。例如:aa转换为bc,zz转换为ab;当连续相同字母超过两个时,第三个出现的字母按第一次出现算。要求实现函数:voidconvert(char*input,char*output)【输入】c7、har*input,输入的字符串【输出】char*output,输出的字符串【返回】无#include#include#includevoidconvert(char*input,char*output){ if(input==NULL) return; chartemp=’ ′;intlen_input=strlen(input); inti; intflag=0; for(i=0;i8、output[i]=(input[i]-’a'+1)%26+’a'; te
4、及格线,要求如下:(1)及格线是10的倍数;(2)保证至少有60%的学生及格;(3)如果所有的学生都高于60分,则及格线为60分输入:输入10个整数,取值0~100输出:输出及格线,10的倍数#includevoidbubblesort(intarr[]){ inti,j,temp; for(i=0;i<10;i++) for(j=0;j<9-i&&arr[j]>arr[j+1];j++) { temp=arr[j]; arr[j]=arr[j+1]; arr[j+1]=temp; }} intGe
5、tPassLine(inta[]){ bubblesort(a); if(a[0]>=60) return60; elsereturn(((int)a[4]/10)*10);} main(){ inta[10]={0}; intresult; printf(“请随机输入10个成绩(0-100):”); scanf(“%d%d%d%d%d%d%d%d%d%d”,&a[0],&a[1],&a[2],&a[3],&a[4],&a[5],&a[6],&a[7],&a[8],&a[9]); printf
6、(“”); result=GetPassLine(a); printf(“及格为:%d”,result); return1;}14.字串转换问题描述:将输入的字符串(字符串仅包含小写字母’a'到’z'),按照如下规则,循环转换后输出:a->b,b->c,…,y->z,z->a;若输入的字符串连续出现两个字母相同时,后一个字母需要连续转换2次。例如:aa转换为bc,zz转换为ab;当连续相同字母超过两个时,第三个出现的字母按第一次出现算。要求实现函数:voidconvert(char*input,char*output)【输入】c
7、har*input,输入的字符串【输出】char*output,输出的字符串【返回】无#include#include#includevoidconvert(char*input,char*output){ if(input==NULL) return; chartemp=’ ′;intlen_input=strlen(input); inti; intflag=0; for(i=0;i8、output[i]=(input[i]-’a'+1)%26+’a'; te
8、output[i]=(input[i]-’a'+1)%26+’a'; te
此文档下载收益归作者所有