C语言基本练习题.docx

上传人:b****8 文档编号:30589972 上传时间:2023-08-18 格式:DOCX 页数:14 大小:16.87KB
下载 相关 举报
C语言基本练习题.docx_第1页
第1页 / 共14页
C语言基本练习题.docx_第2页
第2页 / 共14页
C语言基本练习题.docx_第3页
第3页 / 共14页
C语言基本练习题.docx_第4页
第4页 / 共14页
C语言基本练习题.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

C语言基本练习题.docx

《C语言基本练习题.docx》由会员分享,可在线阅读,更多相关《C语言基本练习题.docx(14页珍藏版)》请在冰豆网上搜索。

C语言基本练习题.docx

C语言基本练习题

1.某城市出租车收费标准如下:

起步里程是3公里,起步费是10元;超出起步里程后每公里1.5元。

编写程序,输入行驶里程(公里),计算并输出乘客应支付的车费(元)。

#include

intmain()

{

doublen;

scanf("%lf",&n);

if(n<=3)

{

printf("%d\n",10);

}

else

{

printf("%.2f\n",1.0*(10+(n-3)*1.5));

}

return0;

}

2.某城市月用水量收费标准如下:

每月使用吨数小于等于15吨的,每吨收费2.5元;每月使用吨数超过15吨的,采用分段计费:

超过部分每吨3元。

编写程序,输入使用吨数,计算并输出用户水费(元)。

#include

intmain()

{

doublen,x;

scanf("%lf",&n);

if(n<=15)

{x=n*2.5;

}

else

{

x=15*2.5+(n-15)*3.0;

}

printf("%.2f\n",x);

return0;

}

3.求解简单表达式。

输入一个形式如:

"操作数运算符操作数"的四则运算表达式,输出运算结果,要求使用switch语句(if语句)编写。

#include

#include

intmain()

{

doubles1,s2;

charop;

scanf("%lf%c%lf",&s1,&op,&s2);

switch(op)

{case'+':

printf("%.2f\n",s1+s2);break;

case'-':

printf("%.2f\n",s1-s2);break;

case'*':

printf("%.2f\n",s1*s2);break;

case'/':

if(fabs(s2)

printf("Wronginput!

\n");

else

printf("%.2f",s1/s2);

break;

default:

printf("Wronginput!

\n");

}

return0;

}

4.用一张100元纸票换1元,2元和5元的纸票(至少各一张),问有哪几种换法?

各几张?

#include

intmain()

{

inti,j,z;

for(i=1;i<=93;i++)

{

for(j=1;j<=47;j++)

{

for(z=1;z<20;z++)

{

if(i+2*j+5*z==100)

printf("%d%d%d\n",i,j,z);

}

}

}

return0;

}

5.一个球从100米高度自由落下,每次落地后反跳回原高度的一半,然后再落下再反弹。

求它在第10次落地时,共经过多少米?

第10次反弹多高?

#include

intmain(void)

{

intn;

doublesn=100.0,hn=sn/2;

for(n=2;n<11;n++)

{

sn=sn+2*hn;

hn=hn/2;

}

printf("%.4f%.4f\n",sn,hn);

return0;

}

6.程序功能:

用户输入两个整数,求出这两个整数之间的偶数的和;要求使用main函数和用户自定义函数,其中,自定义函数的功能:

接收main函数传递过来的参数,计算并返回给main函数。

#include

ints(inta,intb);

intmain()

{

inta,b;

scanf("%d%d",&a,&b);

printf("%d\n",s(a,b));

return0;

}

ints(inta,intb)

{

intsum=0,i;

for(i=a;i<=b;i++)

{

if(i%2==0)

sum=sum+i;

}

returnsum;

}

7.程序功能:

用户输入三个整数,求出这三个整数之间最大值并输出;要求使用main函数和用户自定义函数,其中,自定义函数的功能:

接收main函数传递过来的参数,计算出最大值并返回给main函数。

#include

ints(inta,intb);

intmain()

{

inta,b,c;

scanf("%d%d%d",&a,&b,&c);

printf("%d\n",s(s(a,b),c));

return0;

}

ints(inta,intb)

{

if(a>b)

returna;

else

returnb;

}

8.程序功能:

用户输入一个整数,求出这个整数中含有6的个数并输出,要求使用main函数和用户自定义函数,其中,自定义函数的功能:

接收main函数传递过来的参数,统计出结果并返回给main函数。

#include

intsearch_six(intnum,intc);

intmain()

{

intn,count=0;

intc=0;

scanf("%d",&n);

c=search_six(n,count);

printf("%d\n",c);

return0;

}

intsearch_six(intnum,intc)

{

inti,temp;

for(i=0;;i++)

{

temp=num%10;

num=num/10;

if(temp==6)

c++;

if(num==0)

break;

}

returnc;

}

9.程序功能:

用户输入长和宽两个数,求出长方形的面积,要求使用main函数和用户自定义函数,其中,用户自定义函数接受main函数传递过来的两个参数,求面积并返回之。

#include

doubles(doublea,doubleb);

intmain()

{

doublea,b;

scanf("%lf%lf",&a,&b);

printf("%.2f\n",s(a,b));

return0;

}

doubles(doublea,doubleb)

{

doubles;

s=a*b;

returns;

}

10.程序功能:

用户输入一个字符串,求出该字符串的长度。

(不能使用系统定义的函数strlen)

#include

intmain()

{

inti=0;

charch;

while(ch=getchar(),ch!

='\n')

{

i++;

}

printf("%d\n",i);

return0;

}

11.程序功能:

用户输入一个字符串,求出该字符串中“X”字符的个数。

#include

intmain()

{

inti=0;

charch;

while(ch=getchar(),ch!

='\n')

{

if(ch=='X')

i++;

}

printf("%d\n",i);

return0;

}

12.程序功能:

用户输入一个字符串,将该串中大写字母变为小写字母,小写字母不变,并输出结果。

#include

intmain()

{

charch;

while(ch=getchar(),ch!

='\n')

{

if(ch>='A'&&ch<='Z')

{

ch=ch+32;

printf("%c",ch);

}

else

printf("%c",ch);

}

printf("\n");

return0;

}

13.在数组中查找指定元素。

请编写函数search(intb[],intn,intx),其功能是在一个大小为n的数组a中查找x,如果找到则返回所在数组的下标,否则返回-1。

主函数根据返回值,分别输出位置信息或输出“找不到”。

#include

intsearch(intlist[],intn,intx);

intmain()

{

intlist[100],i,x,n;

scanf("%d",&n);

for(i=0;i

{

scanf("%d",&list[i]);

}

scanf("%d",&x);

i=search(list,n,x);

if(i>=0)

printf("%d\n",i);

else

printf("Notfound\n");

return0;

}

intsearch(intlist[],intn,intx)

{

inti;

for(i=0;i<10;i++)

{

if(list[i]==x)

returni;

}

return-1;

}

14.在主函数中输入一个字符,再输入一个以回车结束的字符串(少于80个字符),调用函数search()查找该字符在字符串中所对应的最大下标(下标从0开始);若没找到则输出“NotFound!

”。

函数原型:

intsearch(char*s,charx)。

#include

#include

intsearch(char*s,charx);

intmain()

{

chars[100];

charm;

intn;

gets(s);

scanf("%c",&m);

n=search(s,m);

if(n>=0)

printf("%d\n",n);

else

printf("NotFound!

\n");

return0;

}

intsearch(char*s,charx)

{

inti;

for(i=strlen(s)-1;;i--)

{

if(s[i]==x)

returni;

}

return-1;

}

15.定义包含学号(int)、姓名(name[10])、成绩(float)的学生结构类型(structStudType),学生基本信息可通过结构数组初始化的方法输入。

编写函数intsearch(structStudTypestu[],intn,char*name),实现通过学生姓名查询功能,在主函数调用并输出学生信息,若没找到输出"NotFound!

"。

#include

#include

structStudType{

intnum;

charname[10];

floatwage;

};

intsearch(structStudTypestu[],intn,char*name);

intmain()

{

intn,i,k;

charnum2[100];

 

structStudTypestu[3]={

{201101,"qw",80},{201102,"we",85},{201103,"er",90}

};

scanf("%d",&n);

for(i=0;i

{

scanf("%s",&num2);

k=search(stu,n,num2);

if(k==3)

{

printf("NotFound\n");

}

else

printf("%d%s%.1f\n",stu[k].num,stu[k].name,stu[k].wage);

}

return0;

}

intsearch(structStudTypestu[],intn,char*name)

{

inti,j;

for(i=0;i<3;i++)

{

if(strcmp(stu[i].name,name)==0)

returni;

}

return3;

}

16.编写函数voidstrcopy(char*s,char*t),实现将字符串t复制至字符串s中(不能使用系统函数strcpy)。

在主函数中调用该函数并输出字符串s。

#include

voidstrcopy(char*s,char*t);

intmain()

{

chars[100],c[100];

gets(s);

strcopy(s,c);

puts(c);

return0;

}

voidstrcopy(char*s,char*t)

{

inti=0;

for(i=0;s[i]!

='\0';i++)

{

t[i]=s[i];

}

}

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高中教育 > 高中教育

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1