C语言上机练习题.docx

上传人:b****3 文档编号:938821 上传时间:2022-10-14 格式:DOCX 页数:27 大小:22.84KB
下载 相关 举报
C语言上机练习题.docx_第1页
第1页 / 共27页
C语言上机练习题.docx_第2页
第2页 / 共27页
C语言上机练习题.docx_第3页
第3页 / 共27页
C语言上机练习题.docx_第4页
第4页 / 共27页
C语言上机练习题.docx_第5页
第5页 / 共27页
点击查看更多>>
下载资源
资源描述

C语言上机练习题.docx

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

C语言上机练习题.docx

C语言上机练习题

1.输入一个不超过五位的正整数,输出其逆数。

例如输入12345,输出应为54321。

#include"stdio.h"

main()

{

longn;

intww,qw,bw,sw,gw;

printf("Pleaseinput:

\n");

scanf("%ld",&n);

while(n<=0||n>99999)

{

printf("\nThenumberistoolittleortoolarge.Retryplease!

\n");

scanf("%ld",&n);

}

if(n>=10000&&n<=99999)

{

ww=n/10000;

qw=n/1000%10;

bw=n/100%10;

sw=n/10%10;

gw=n%10;

printf("Theoldnumberis:

%ld\n",n);

printf("Thenewnumberis:

%d%d%d%d%d\n",gw,sw,bw,qw,ww);

}

elseif(n>=1000&&n<=9999)

{

qw=n/1000;

bw=n/100%10;

sw=n/10%10;

gw=n%10;

printf("Theoldnumberis:

%ld\n",n);

printf("Thenewnumberis:

%d%d%d%d\n",gw,sw,bw,qw);

}

elseif(n>=100&&n<=999)

{

bw=n/100;

sw=n/10%10;

gw=n%10;

printf("Theoldnumberis:

%ld\n",n);

printf("Thenewnumberis:

%d%d%d\n",gw,sw,bw);

}

elseif(n>=10&&n<=99)

{

sw=n/10;

gw=n%10;

printf("Theoldnumberis:

%ld\n",n);

printf("Thenewnumberis:

%d%d\n",gw,sw);

}

elseprintf("Theoldnumberequalsthenewnumber:

%ld",n);

}

2.计算1+2+3…+n的值,n是从键盘输入的自然数。

/*Note:

YourchoiceisCIDE*/

#include"stdio.h"

main()

{

intn,i;

longsum=0;

printf("1+2+3+....+n\n");

printf("Pleaseinputn:

\n");

scanf("%d",&n);

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

{

sum+=i;

}

printf("sum=%ld",sum);

}

3.从终端(键盘)读入20个数据到数组中,统计其中正数的个数,并计算这些正数之和。

/*Note:

YourchoiceisCIDE*/

#include"stdio.h"

#defineN20

main()

{

inta[N],i,sum=0,count=0;

printf("Pleaseinputnumbers:

\n");

for(i=0;i

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

if(a[i]>0)

{sum+=a[i];

count++;

}

}

printf("count=%d,sum=%d",count,sum);

}

4.从终端(键盘)将5个整数输入到数组a中,然后将a逆序复制到数组b中,并输出b中各元素的值。

/*Note:

YourchoiceisCIDE*/

#include"stdio.h"

#defineN5

main()

{inta[N],b[N],i;

printf("Pleaseinputnumbers:

\n");

for(i=0;i

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

b[N-i-1]=a[i];

}

printf("\nTheoldnumbersare:

\n");

for(i=0;i

printf("%-4d",a[i]);

printf("\nThenewnumbersare:

\n");

for(i=0;i

printf("%-4d",b[i]);

}

5.要将五张100元的大钞票,换成等值的50元,20元,10元,5元一张的小钞票,每种面值至少1张,编程输出所有可能的换法,程序应适当考虑减少重复次数。

/*Note:

YourchoiceisCIDE*/

#include"stdio.h"

main()

{inti,j,k,n;

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

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

for(k=1;k<=50;k++)

for(n=1;n<=100;n++)

if(i*50+j*20+k*10+n*5==500)printf("num50=%d,num20=%d,num10=%d,num5=%d\n",i,j,k,n);

}

6.求n以内(不包括n)同时能被3和7整除的所有自然数之和的平方根s,n从键盘输入。

例如若n为1000时,函数值应为:

s=153.909064。

/*Note:

YourchoiceisCIDE*/

#include"stdio.h"

#include"math.h"

main()

{intn,s,i;

floatsum=0;

printf("Pleaseinputn:

\n");

scanf("%d",&n);

while(n<=0)

{

printf("\nErrorinput.Retryplease:

\n");

scanf("%d",&n);

}

for(i=1;i

if(i%3==0&&i%7==0)

sum+=i;

printf("Thenumberis:

%4.2f",sqrt(sum));

}

7.一辆卡车违反交通规则,撞人后逃跑。

现场有三人目击事件,但都没有记住车号,只记下车号的一些特征。

甲说:

牌照的前两位数字是相同的;乙说:

牌照的后两位数字是相同的,但与前两位不同;丙是数学家,他说:

四位的车号刚好是一个整数的平方。

请根据以上线索找出车号。

/*Note:

YourchoiceisCIDE*/

#include"stdio.h"

#include"math.h"

main()

{

inti,qw,bw,sw,gw;

for(i=1122;i<=9988;i++)

{if(sqrt(i)!

=(int)sqrt(i))

continue;

qw=i/1000;

bw=i/100%10;

sw=i/10%10;

gw=i%10;

if(qw==bw&&sw==gw)

{

printf("\nThenumberis:

%d\n",i);

break;

}

}

8.输入1~10之间的一个数字,输出它对应的英文单词。

/*Note:

YourchoiceisCIDE*/

#include"stdio.h"

main()

{

intn;

printf("Pleaseinputn:

\n");

scanf("%d",&n);

while(n<1||n>10)

{

printf("Errorinput!

Retryplease:

\n");

scanf("%d",&n);

}

switch(n)

{

case1:

printf("One!

");break;

case2:

printf("Two!

");break;

case3:

printf("Three!

");break;

case4:

printf("Four!

");break;

case5:

printf("Five!

");break;

case6:

printf("Six!

");break;

case7:

printf("Seven!

");break;

case8:

printf("Eight!

");break;

case9:

printf("Nine!

");break;

case10:

printf("Ten!

");break;

}

}

9.个位数为6且能被3整除但不能被5整除的三位自然数共有多少个,分别是哪些?

/*Note:

YourchoiceisCIDE*/

#include"stdio.h"

main()

{

inti,count=0;

for(i=106;i<596;i=i+10)

{

if(i%3==0&&i%5!

=0)

{

printf("%-4d",i);

count++;

}

}

printf("count=%-4d",count);

}

10.用自然语言描述程序逻辑如下,试写程序。

①设置环境;

②定义变量i、j、s,以及用于放置结果的变量sum,并令sum初值为0;

③i=1;

④如果i≤100,则转⑤,否则转⑧;

⑤令s=0,求前i个自然数之和,并放于变量s之中;

⑥sum=sum+s;

⑦i增加1,转④;

8输出和sum,结束。

/*Note:

YourchoiceisCIDE*/

#include"stdio.h"

main()

{

inti,j;

longs=0,sum=0;

printf("1+1+2+1+2+3+1+2+3+4+....1+2+3+..+n\n");

i=1;

while(i<=3)

{

s+=i;

sum+=s;

i++;

}

printf("sum=%ld",sum);

}

11.用自然语言描述的程序逻辑为:

①设置环境;

②定义变量i、flag和password,并令flag=0,i=0;

③用户回答口令,将其赋于password变量;

④口令正确?

如果是,则flag=1,转⑥。

否则转⑤;

⑤回答三次口令了吗?

如果没有,计数器加1后(i++),转③,否则转⑥;

6根据flag之值输出相应信息。

/*Note:

YourchoiceisCIDE*/

#include"stdio.h"

#include"string.h"

#defineN6

main()

{

inti=0,flag=0;

charpassword[N];

printf("Thepasswordis:

123456\n");

while(i<3)

{

gets(password);

if(strlen(password

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

当前位置:首页 > PPT模板 > 其它模板

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

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