c语言编程全部练习

合集下载

经典C语言编程(20题)

经典C语言编程(20题)

1.请编写一个函数fun,其功能是:删除字符串中的数字字符。

例如,输入字符串为:48CTYP9R6,则输出:CTYPR。

部分源程序已经给出,请勿改动主函数的内容。

main(){ char item[100];gtes(item);fun(item);printf(“The string:%s\n”,item);}解答:#include<stdio.h>#include<string.h>void fun(char s[]){int i,j;for(i=j=0;s[i]!='\0';i++)if(s[i]>='0' && s[i]<='9') i++;elses[j++]=s[i]; s[j]='\0';}main(){ char item[100];gets(item);fun(item);printf("The string:%s\n",item); }2. 从键盘上读入一字符串存入字符数组xx中,请编制函数encryptChar(),按给定的替代关系对数组xx中的所有字符进行替代,仍存入数组xx的对应位置上,最后调用函数WriteDat()将结果xx输出。

替代关系如下:f(p)=p*11%256其中,p是数组xx中某一个字符的ASCII值,f(p)是计算后新字符的ASCII值),如果原字符的ASCII值是偶数或计算后f(p)值小于32,则该字符不变,否则用f(p)所对应的字符进行替代。

设字符串的长度小于80个字符,部分源程序已给出。

除增加必要的数据定义、函数参数外,请勿改动主函数的内容。

#include <stdio.h>main(){ char xx[80];gets(xx);encryptChar();WriteDat();}解答:#include<stdio.h>#include<string.h>void encryptChar(char a[]) {int i,j;for(i=j=0;a[i]!='\0';i++) if(a[i]%2==0 ||(a[i]*11%256<32))a[j++]=a[i];elsea[j++]=a[i]*11%256; } WriteDat(char a[]) {puts(a);}main(){ char xx[80];gets(xx);encryptChar(xx); WriteDat(xx);} _3. 设有数组:int a[10]={6012,5099,9012,7025,8088,9096,8080,3046,5082,2345};请编制函数jssort(),其功能是:要求按每个数的后三位的大小进行升序排序,然后调用函数WriteDat()将结果输出。

c语言编程题库100题

c语言编程题库100题

c语言编程题库100题1. 计算两个整数的和编写一个C程序,接收两个整数作为输入并计算它们的和,并将结果输出。

2. 计算两个整数的差编写一个C程序,接收两个整数作为输入并计算它们的差,并将结果输出。

3. 计算两个整数的乘积编写一个C程序,接收两个整数作为输入并计算它们的乘积,并将结果输出。

4. 计算两个整数的商编写一个C程序,接收两个整数作为输入并计算它们的商,并将结果输出。

5. 判断一个整数是否为偶数编写一个C程序,接收一个整数作为输入并判断它是否为偶数,并将结果输出。

6. 判断一个整数是否为质数编写一个C程序,接收一个整数作为输入并判断它是否为质数(只能被1和自身整除的数),并将结果输出。

7. 计算一个整数的阶乘编写一个C程序,接收一个整数作为输入并计算它的阶乘,并将结果输出。

8. 计算一个整数的平方根编写一个C程序,接收一个整数作为输入并计算它的平方根,并将结果输出。

9. 判断一个字符串是否为回文字符串编写一个C程序,接收一个字符串作为输入并判断它是否为回文字符串(正向和反向读取都相同的字符串),并将结果输出。

10. 排序一个整数数组编写一个C程序,接收一个整数数组作为输入并对其进行排序,并将结果输出。

11. 求两个整数之间的最大公约数编写一个C程序,接收两个整数作为输入并计算它们的最大公约数,并将结果输出。

......(依此类推,共100道题)这是一个C语言编程题库,包含100道不同类型的题目。

你可以选择其中的题目进行练习和实践,通过解决这些问题来提升自己的C语言编程能力。

每道题目都有具体的描述和要求,你可以按照题目要求编写相应的代码,并运行测试。

如果遇到问题,可以参考相关的解法或向他人寻求帮助。

通过不断地练习和学习,你将逐渐掌握C语言的编程技巧和思维方式,提高自己在编程领域中的能力。

祝你编程愉快!。

c语言编程100题

c语言编程100题

*******
*****
***
*
78、打印如下矩阵
25
24
23
22
21
10
9
8
7
20
64、编写函数,通过指针求一个字符串的反串。函数头如下:
65、编写函数,通过指针求一个字符串的长度。函数头如下:
#include <stdio.h>
char *strlen(char *s)
{char *p=s;
while(*p)p++;
return(p-s);
71、试编程判断输入的正整数是否既是5又是7的整数倍。若是,则输出yes,否则输出no。
72、每个苹果0.8元,第一天买两个苹果,从第二天开始,每天买前一天的2倍,直到购买的苹果个数达到不超过100的最在数。编写程序求每天平均花多少钱?
73、试编程找出1至99的所有同构数,所谓同构数是指它出现在它的平方数的右边。如6的平方数36故6是同构数。
74、试编写一程序将字符串s中的所有字符c删除。
75、编写程序,求1-3+5+……+101
76、编写程序,求E=1+1/1!+1/2!+……+1/n!,要求最后一项的值小于10-4
77、编写程序,打印以下图形(输入一正整数说,输出一棱形)
当n=4时,图形如下:
*
***
*****
24. 把文本文件d1.dat复制到文本文件d2.dat中,要求仅复制d1.dat中的英文字符。
25. 编程,把文本文件d1.dat复制到d2.dat(其中空格字符不复制)。

C语言编程经典100例

C语言编程经典100例

【程序2】题目:企业发放的奖金根据利润提成。

利润(I)低于或等于10万元时,奖金可提10%;利润高于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可可提成7.5%;20万到40万之间时,高于20万元的部分,可提成5%;40万到6 0万之间时高于40万元的部分,可提成3%;60万到100万之间时,高于60万元的部分,可提成1.5%,高于100万元时,超过100万元的部分按1%提成,从键盘输入当月利润I,求应发放奖金总数?1.程序分析:请利用数轴来分界,定位。

注意定义时需把奖金定义成长整型。

2.程序源代码:1 2 3 4 5 6 7 8 91011 main(){long int i;int bonus1,bonus2,bonus4,bonus6,bonus10,bonus; scanf("%ld",&i);bonus1=100000*0.1;bonus2=bonus1+100000*0.75; bonus4=bonus2+200000*0.5;bonus6=bonus4+200000*0.3;bonus10=bonus6+400000*0.15;if(i<=100000)bonus=i*0.1;else if(i<=200000)bonus=bonus1+(i-100000)*0.075;else if(i<=400000)4 5 6 7 8 91011121314151617181920212223 scanf("%d,%d,%d",&year,&month,&day);switch(month)/*先计算某月以前月份的总天数*/{case1:sum=0;break;case2:sum=31;break;case3:sum=59;break;case4:sum=90;break;case5:sum=120;break;case6:sum=151;break;case7:sum=181;break;case8:sum=212;break;case9:sum=243;break;case10:sum=273;break;case11:sum=304;break;case12:sum=334;break;default:printf("data error");break;}sum=sum+day; /*再加上某天的天数*/if(year%400==0||(year%4==0&&year%100!=0))/*判断是不是闰年*/ leap=1;elseleap=0;if(leap==1&&month>2)/*如果是闰年且月份大于2,总天数应该加一天*/ sum++;【程序7】【程序14】题目:将一个正整数分解质因数。

c语言入门练习题

c语言入门练习题

C语言入门练习题一、基础知识篇1.1 变量与常量1. 定义一个整型变量并赋值为10。

2. 声明一个浮点型常量,其值为3.14。

3. 将字符型变量 'A' 赋值给另一个字符型变量。

1.2 数据类型1. 将一个整型变量转换为浮点型变量。

2. 将一个长整型变量赋值给一个短整型变量。

3. 编写一个程序,输出不同数据类型所占的字节数。

1.3 运算符1. 计算5加3乘2的结果。

2. 判断两个整型变量是否相等。

3. 使用自增运算符使变量i的值增加1。

二、控制结构篇2.1 顺序结构1. 编写一个程序,输出1到10的整数。

2. 输出用户输入的两个整数中的较大值。

3. 计算并输出圆的面积(给定半径)。

2.2 选择结构1. 判断一个整数是正数、负数还是零。

2. 根据用户输入的成绩,输出对应的等级(A、B、C、D、E)。

3. 编写一个程序,实现石头剪刀布的游戏。

2.3 循环结构1. 计算1到100所有整数的和。

2. 输出所有的水仙花数(一个三位数,其各位数字的立方和等于该数本身)。

3. 使用循环结构输出九九乘法表。

三、函数篇3.1 函数定义与调用1. 编写一个函数,计算两个整数的和。

2. 定义一个函数,实现字符串的复制。

3. 创建一个函数,判断一个数是否为素数。

3.2 递归函数1. 使用递归函数计算斐波那契数列的第n项。

2. 编写一个递归函数,实现字符串的逆序输出。

3. 利用递归函数求解汉诺塔问题。

四、数组篇4.1 一维数组1. 初始化一个包含10个整数的数组,并输出其元素。

2. 计算一维数组中所有元素的和。

3. 找出一维数组中的最大值和最小值。

4.2 二维数组1. 创建一个3行4列的二维数组,并输出其元素。

2. 计算二维数组对角线元素的和。

3. 实现矩阵的转置。

五、指针篇5.1 指针基本操作1. 声明一个整型变量和一个指向该变量的指针,并输出指针所指向的值。

2. 使用指针实现两个整数的交换。

3. 编写一个函数,通过指针参数修改传入的字符串。

c语言基础100题

c语言基础100题

c语言基础100题以下是c语言基础100题:1. 编写一个程序,打印“Hello, World!”2. 编写一个程序,读取两个整数并打印它们的和。

3. 编写一个程序,读取一个整数并判断它是奇数还是偶数。

4. 编写一个程序,读取一个整数并判断它是否为质数。

5. 编写一个程序,读取一个整数并计算它的阶乘。

6. 编写一个程序,读取一个整数并打印它的逆序。

7. 编写一个程序,读取一个字符串并打印它的长度。

8. 编写一个程序,读取一个字符串并将其反转。

9. 编写一个程序,读取一个字符串并判断它是否为回文。

10. 编写一个程序,读取一个字符串并统计其中的字符、单词和行数。

11. 编写一个程序,读取一个字符串并将其中的小写字母转换为大写字母。

12. 编写一个程序,读取一个字符串并将其中的大写字母转换为小写字母。

13. 编写一个程序,读取一个字符串并打印其中每个字符的ASCII码。

14. 编写一个程序,读取一个整数并将其转换为二进制、八进制和十六进制。

15. 编写一个程序,读取两个整数并交换它们的值。

16. 编写一个程序,读取两个整数并计算它们的最大公约数和最小公倍数。

17. 编写一个程序,读取一个整数并打印出它的所有因子。

18. 编写一个程序,生成斐波那契数列的前n项。

19. 编写一个程序,读取一个字符串,并打印其中出现最多的字符。

20. 编写一个程序,读取一个字符串,并将其中的空格替换为连字符。

21. 编写一个程序,读取一个字符串并删除其中的重复字符。

22. 编写一个程序,读取一个字符串并判断它是否为合法的URL。

23. 编写一个程序,读取一个字符串并打印出其中的单词个数。

24. 编写一个程序,读取一个字符串并打印出其中的句子个数。

25. 编写一个程序,读取一个整数n并打印出前n个自然数的平方。

26. 编写一个程序,读取一个整数n并打印出前n个自然数的立方。

27. 编写一个程序,读取一个整数n并打印出前n个自然数的和。

C语言编程题带答案

C语言编程题带答案

C语言编程题带答案题目 1:求两个整数的最大值```cinclude <stdioh>int max(int num1, int num2) {if (num1 > num2) {return num1;} else {return num2;}}int main(){int num1 = 10, num2 = 20;int maxValue = max(num1, num2);printf("最大值为: %d\n", maxValue);return 0;}```分析:在这个程序中,我们定义了一个名为`max` 的函数,它接受两个整数参数`num1` 和`num2` 。

通过使用条件判断语句`if` 来比较这两个数的大小,如果`num1` 大于`num2` ,则返回`num1` ,否则返回`num2` 。

在`main` 函数中,我们给定了两个整数`num1` 和`num2` 的值,并调用`max` 函数来获取它们中的最大值,最后使用`printf` 函数将最大值输出到控制台。

题目 2:计算一个整数数组的平均值```cinclude <stdioh>float average(int arr, int size) {int sum = 0;for (int i = 0; i < size; i++){sum += arri;}return (float)sum / size;}int main(){int arr ={10, 20, 30, 40, 50};int size = sizeof(arr) / sizeof(arr0);float avg = average(arr, size);printf("平均值为: %2f\n", avg);return 0;}```分析:在这个程序中,首先在`average` 函数里,我们初始化一个变量`sum` 为 0 ,用于存储数组元素的总和。

c语言编程练习题

c语言编程练习题
}
10、将一个数组元素逆序排放。
#include <stdio.h>
main()
{ int a[10],i,t;
*
#include<stdio.h>
main()
{int i,j,k;
for(i=1;i<=4;i++) //上半部图形
{for(j=1;j<=4-i;j++) printf(" ");
for(k=1;k<=2*i-1;k++) printf("*");
{
if (c>='a' && c<='z' || c>='A' && c<='Z')
letters++;
else if (c==' ')
space++;
else if (c>='0' && c<='9')
digit++;
{
g=i%10; //g、s、b分别表示个位、十位、百位数字。
s=i/10%10;
b=i/100;
if(i==g*g*g+s*s*s+b*b*b)
printf("%5d ",i);
}
}
8、输入一行字符,统计其中字母、数字、空格及其他字符的个数。
#include <stdio.h>
int main()

c编程练习题

c编程练习题

c编程练习题C语言是一种广泛使用的计算机编程语言,以其高效性和灵活性而闻名。

为了帮助学习者更好地掌握C语言,以下是一些C编程练习题,它们覆盖了基础到中级的知识点。

# 基础练习题1. 数据类型转换编写一个程序,输入一个整数和一个浮点数,然后输出它们转换为字符型后的ASCII值。

2. 算术运算编写一个程序,接受两个整数作为输入,并计算它们的和、差、积、商以及余数。

3. 条件语句编写一个程序,根据用户输入的成绩(0-100),输出相应的等级(A-F)。

4. 循环结构使用for循环打印从1到100的所有整数,并找出3和5的公倍数。

5. 数组操作编写一个程序,接受用户输入的5个整数,存储到数组中,并找出最大值和最小值。

# 中级练习题1. 字符串处理编写一个程序,接受用户输入的字符串,然后反转该字符串并输出。

2. 函数定义与调用定义一个函数,计算两个数的最大公约数,并在主函数中调用它。

3. 指针应用编写一个程序,使用指针交换两个变量的值,并输出交换后的结果。

4. 结构体使用定义一个结构体来存储学生的信息(如学号、姓名、成绩),然后编写一个程序来输入和输出这些信息。

5. 文件操作编写一个程序,能够读取一个文本文件中的内容,并计算其中单词的数量。

# 进阶练习题1. 递归函数编写一个递归函数来计算阶乘,并在主函数中调用它。

2. 动态内存分配使用malloc或calloc动态分配内存,并编写一个程序来复制一个数组的内容到另一个数组。

3. 链表操作实现一个简单的链表,并提供插入、删除和遍历链表的函数。

4. 排序算法实现冒泡排序、选择排序或插入排序算法,并编写一个程序来对用户输入的一系列数字进行排序。

5. 二叉树遍历定义一个二叉树的结构,并实现前序、中序和后序遍历。

# 实践项目1. 简单计算器实现一个基本的计算器,能够进行加、减、乘、除等基本运算。

2. 图书管理系统设计一个简单的图书管理系统,能够添加、删除、查找和列出图书。

c语言编程题库100题

c语言编程题库100题

c语言编程题库100题C语言是一门广泛应用于计算机领域的高级编程语言。

对于学习者来说,掌握C语言编程是一项必修课程。

为此,我们为大家整理了100道C语言编程题,供大家练练手,锻炼编程能力。

以下是题目列表:##### 基础篇1、编写一个C程序,输出“Hello, World!”。

2、编写一个C程序,输入两个数,求和并输出结果。

3、编写一个C程序,输入三个数,求平均值并输出结果。

4、编写一个C程序,输入三个数,比较大小并输出最大值。

5、编写一个C程序,输入一个数,判断奇偶性并输出结果。

6、编写一个C程序,输入一个数,判断是否为质数并输出结果。

7、编写一个C程序,输入一个数,判断是否为闰年并输出结果。

8、编写一个C程序,输入一个字符,判断是否为字母并输出结果。

9、编写一个C程序,输入一个数,判断是否为回文数并输出结果。

10、编写一个C程序,输入一个年份和月份,输出该年该月的天数。

##### 数组篇11、编写一个C程序,输入一个整数数组,求所有元素之和并输出结果。

12、编写一个C程序,输入一个数组,找出最大值并输出结果。

13、编写一个C程序,输入一个数组,找出最小值并输出结果。

14、编写一个C程序,输入一个数组,计算平均值并输出结果。

15、编写一个C程序,输入一个数组,判断是否为升序或降序排列并输出结果。

16、编写一个C程序,输入一个数组,将数组元素逆序排列并输出结果。

17、编写一个C程序,输入两个数组,将两个数组合并后按照升序或降序排列并输出结果。

18、编写一个C程序,输入一个数组,输出数组中出现次数最多的元素。

19、编写一个C程序,输入一个数组,删除指定位置上的元素并输出结果。

20、编写一个C程序,输入一个数组和一个数,将该数插入到数组中并输出结果。

##### 字符串篇21、编写一个C程序,输入一个字符串,统计字符串中的字符个数并输出结果。

22、编写一个C程序,输入一个字符串,统计字符串中的单词个数并输出结果。

c语言编程习题及答案

c语言编程习题及答案

c语言编程习题及答案C语言是一种广泛使用的计算机编程语言,以其高效性和灵活性而闻名。

以下是一些C语言编程习题及其答案,供学习者练习和参考。

习题1:求两个数的和编写一个C程序,输入两个整数,输出它们的和。

```c#include <stdio.h>int main() {int num1, num2, sum;printf("请输入两个整数:");scanf("%d %d", &num1, &num2);sum = num1 + num2;printf("%d + %d = %d\n", num1, num2, sum);return 0;}```习题2:计算圆的面积编写一个C程序,输入圆的半径,计算并输出圆的面积。

```c#include <stdio.h>#define PI 3.14159int main() {double radius, area;printf("请输入圆的半径:");scanf("%lf", &radius);area = PI * radius * radius;printf("圆的面积是:%.2f\n", area);return 0;}```习题3:判断一个数是奇数还是偶数编写一个C程序,输入一个整数,判断并输出它是奇数还是偶数。

```c#include <stdio.h>int main() {int num;printf("请输入一个整数:");scanf("%d", &num);if (num % 2 == 0) {printf("%d 是偶数。

\n", num);} else {printf("%d 是奇数。

C语言经典练习题50道(附答案)

C语言经典练习题50道(附答案)

1.**打印Hello World**练习:编写一个C程序,打印"Hello,World!"到屏幕上。

#include<stdio.h>int main(){printf("Hello,World!\n");return0;}2.**计算两个整数的和**练习:编写一个程序,接受两个整数,然后计算它们的和并打印结果。

#include<stdio.h>int main(){int a=5,b=7;int sum=a+b;printf("Sum:%d\n",sum);return0;}3.**判断奇数或偶数**练习:编写一个程序,接受一个整数,然后判断它是否为奇数或偶数。

#include<stdio.h>int main(){int num=10;if(num%2==0){printf("%d is even.\n",num);}else{printf("%d is odd.\n",num);}return0;}4.**计算阶乘**练习:编写一个程序,计算给定整数的阶乘。

#include<stdio.h>int main(){int n=5;int factorial=1;for(int i=1;i<=n;i++){factorial*=i;}printf("Factorial of%d is%d\n",n,factorial);return0;}5.**反转字符串**练习:编写一个程序,接受一个字符串,然后反转它并打印出来。

#include<stdio.h>#include<string.h>int main(){char str[]="Hello,World!";int len=strlen(str);for(int i=len-1;i>=0;i--){printf("%c",str[i]);}printf("\n");return0;}6.**检查素数**练习:编写一个程序,判断一个整数是否为素数。

(完整版)C语言程序设计练习题(含程序及参考答案)

(完整版)C语言程序设计练习题(含程序及参考答案)

C 语言练习题(所提供的源程序均采用自定义函数方式解决,如不采用函数方式,也可直接在main 函数中借鉴该思想编程,因时间有限,所有程序未能一一验证,仅供参考使用) 1、定义一个函数 int fun(int a,int b,int c),它的功能是:若 a,b,c 能构成等边三角形函数返回 3,若能构成等腰三角形函数返回 2,若能构成一般三角形函数返回 1,若不能构成三角形函数返回 0。

#include <stdio.h>int fun(int a,int b,int c){if(a+b>c && b+c>a && a+c>b){if(a==b && b==c )return 3;else if(a==b||b==c||a==c)return 2;else return 1;}else return 0;}void main(){int a,b,c,shape;printf("\nInput a,b,c: ");scanf("%d%d%d",&a,&b,&c);printf("\na=%d, b=%d, c=%d\n",a,b,c);shape =fun(a,b,c);printf("\n\nThe shape : %d\n",shape);}2、编写一个程序,将两个变量的值交换, 例如变量a中的值原为 3,b中的值原为8,程序运行后 a 中的值为8,b中的值为3。

#include <stdio.h>void fun(int *x,int *y){int t;t=*x;*x=*y;*y=t}void main(){int a=3,b=8;printf("%d %d\n",a,b);fun(&a,b);printf("%d %d\n",a,b);}3、从键盘输入3个数,将最大值放在变量a中,最小值放在变量c中。

c语言必做100题

c语言必做100题

c语言必做100题1. 编写一个C程序,输出“Hello, World!”。

2. 编写一个C程序,计算并输出1到100的和。

3. 编写一个C程序,判断一个数是否为素数。

4. 编写一个C程序,将一个字符串反转。

5. 编写一个C程序,实现二分查找算法。

6. 编写一个C程序,实现插入排序算法。

7. 编写一个C程序,实现选择排序算法。

8. 编写一个C程序,实现冒泡排序算法。

9. 编写一个C程序,实现快速排序算法。

10. 编写一个C程序,实现希尔排序算法。

11. 编写一个C程序,将一个二维数组转置。

12. 编写一个C程序,计算一个数的阶乘。

13. 编写一个C程序,实现斐波那契数列。

14. 编写一个C程序,计算两个数的最大公约数。

15. 编写一个C程序,计算两个数的最小公倍数。

16. 编写一个C程序,计算一个数的平方根。

17. 编写一个C程序,计算一个数的立方根。

18. 编写一个C程序,实现矩阵乘法运算。

19. 编写一个C程序,实现字符串的查找和替换。

20. 编写一个C程序,实现栈的基本操作(入栈、出栈、查看栈顶元素)。

21. 编写一个C程序,实现队列的基本操作(入队、出队、查看队首元素)。

22. 编写一个C程序,实现链表的基本操作(插入、删除、倒置)。

23. 编写一个C程序,实现二叉树的前序、中序和后序遍历。

24. 编写一个C程序,实现图的深度优先搜索算法。

25. 编写一个C程序,实现图的广度优先搜索算法。

26. 编写一个C程序,实现最短路径算法(Dijkstra算法或Floyd算法)。

27. 编写一个C程序,实现最小生成树算法(Prim算法或Kruskal算法)。

28. 编写一个C程序,实现拓扑排序算法。

29. 编写一个C程序,实现优先队列。

30. 编写一个C程序,实现哈希表的基本操作(插入、查找、删除)。

31. 编写一个C程序,实现堆的基本操作(插入、删除、查找最大值)。

32. 编写一个C程序,实现最大堆排序算法。

C语言经典100题

C语言经典100题

C语言经典100题1. 编写一个C程序,输出"Hello, World!"。

```c#include <stdio.h>int main() {printf("Hello, World!\n");return 0;}```2. 编写一个C程序,输入两个整数并输出它们的和。

```c#include <stdio.h>int main() {int num1, num2, sum;printf("请输入两个整数:\n");scanf("%d %d", &num1, &num2);sum = num1 + num2;printf("它们的和是:%d\n", sum);return 0;}```3. 编写一个C程序,输入一个整数,判断它是否为偶数。

```c#include <stdio.h>int main() {int num;printf("请输入一个整数:\n");scanf("%d", &num);if (num % 2 == 0) {printf("%d是偶数。

\n", num);} else {printf("%d是奇数。

\n", num);}return 0;}```4. 编写一个C程序,输入一个字符串,将其反转并输出。

```c#include <stdio.h>#include <string.h>int main() {char str[100];printf("请输入一个字符串:\n");scanf("%s", str);int len = strlen(str);for (int i = len - 1; i >= 0; i--) {printf("%c", str[i]);}printf("\n");return 0;}```5. 编写一个C程序,输入一个正整数,判断它是否为素数。

C语言练习题(带详解答案)

C语言练习题(带详解答案)

一、编程题1.输入2个整数,求两数的平方和并输出。

#include<stdio.h>intmain(void){intta,b,s;printf("pleaseinputa,b:\n");scanf("%d%d”,&a,&b);s=a*a+b*b;printf("theresultis%d\n",s);return0;}2.输入一个圆半径r,当r>=0时,计算并输出圆的面积和周长,否则,输出提示信息。

#include<stdio.h>#definePI3.14intmain(void){doubler,area,girth;printf("pleaseinputr:\n");scanf("%lf",&r);if(r>=0){area=PI*r*r;girth=2*PI*r;printf("theareais%.2f\n",area);printf("thegirthis%.2f\n",girth);}elseprintf("Inputerror!\n");return0;}3、已知函数y=f(x),编程实现输入一个x值,输出y值。

2x+1(x<0)y=0(x=0)2x-1(x>0)#include<stdio.h>voidmain(){intx,y;scanf(“%d”,&x);if(x<0)y=2*x+1;elseif(x>0)y=2*x-1;elsey=0;printf(“%d”,y);}4.从键盘上输入一个百分制成绩score,按下列原则输出其等级:score≥,90等级为A;80≤score<9,0等级为B;70≤score<8,0等级为C;60≤score<7,0等级为D;score<60,等级为E。

计算机系C语言编程50题(含答案)

计算机系C语言编程50题(含答案)

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

#include"stdio.h"main(){int x;printf("please input x(1-10):\n");scanf("%d",&x);switch(x){case 1:printf("one");break;case 2:printf("two");break;case 3:printf("three");break;case 4:printf("four");break;case 5:printf("five");break;case 6:printf("six");break;case 7:printf("server");break;case 8:printf("eight");break;case 9:printf("nine");break;case 10:printf("ten");break;}}2、用自然语言描述程序逻辑如下,试写程序。

①设置环境;②定义变量i、j、s,以及用于放置结果的变量sum,并令sum初值为0;③i=1;④如果i≤100,则转⑤,否则转⑧;⑤令s=0,求前i个自然数之和,并放于变量s之中;⑥sum=sum+s;⑦i增加1,转④;⑧输出和sum,结束。

#include"stdio.h"main(){int i,j,s;long sum=0;for(i=1;i<=100;i++){s=0;for(j=1;j<=i;j++){s=s+j;}sum=sum+s;}printf("sum=%d",sum);}3、用自然语言描述的程序逻辑为:(假设正确口令为123456)①设置环境;②定义变量i、flag和password,并令flag=0,i=0;③用户回答口令,将其赋于password变量;④口令正确?如果是,则flag=1,转⑥。

完整版C语言程序设计练习题含程序及参考答案

完整版C语言程序设计练习题含程序及参考答案

完整版C语言程序设计练习题含程序及参考答案1. 请编写一个C程序,要求输入一个整数n,并打印从1到n的所有整数。

```c#include <stdio.h>int main(){int n;printf("请输入一个整数n:");scanf("%d", &n);for (int i = 1; i <= n; i++){printf("%d ", i);}return 0;}```参考答案:```请输入一个整数n:51 2 3 4 5```2. 请编写一个C程序,要求输入两个整数m和n,并计算它们的和、差、积和商(m除以n的结果)。

```c#include <stdio.h>int main(){int m, n;printf("请输入两个整数m和n:");scanf("%d %d", &m, &n);int sum = m + n;int difference = m - n;int product = m * n;float quotient = (float)m / n;printf("和:%d\n", sum);printf("差:%d\n", difference);printf("积:%d\n", product);printf("商:%.2f\n", quotient);return 0;}```参考答案:```请输入两个整数m和n:10 3和:13差:7积:30商:3.33```3. 请编写一个C程序,要求输入一个整数n,并判断它是否为素数。

```c#include <stdio.h>#include <stdbool.h>bool isPrime(int n){if (n <= 1){return false;}for (int i = 2; i * i <= n; i++){if (n % i == 0){return false;}}return true;}int main(){int n;printf("请输入一个整数n:"); scanf("%d", &n);if (isPrime(n)){printf("%d是素数。

C语言编程练习题附答案

C语言编程练习题附答案

C语言编程练习题附答案1.从键盘输入20个整数,使用冒泡排序将它们从大到小排列并输出。

includeint main() {int a[20]。

i。

j。

t;printf("请任意输入20个整数\n");for (i = 0.i < 20.i++)scanf("%d"。

&a[i]);printf("\n");for (i = 0.i < 19.i++)for (j = 0.j < 19 - i。

j++)if (a[j] < a[j + 1]) {t = a[j];a[j] = a[j + 1];a[j + 1] = t;printf("按照从大到小的顺序排列为\n");for (i = 0.i < 20.i++)printf("%d,"。

a[i]);printf("\n");return 0;2.从键盘输入20个整数,使用选择排序将它们从大到小排列并输出。

includedefine N 20int main() {int a[N]。

i。

j。

max。

k;printf("请任意输入20个整数\n");for (i = 0.i < N。

i++)scanf("%d"。

&a[i]);printf("\n");for (i = 0.i < N - 1.i++) {k = i;for (j = i + 1.j < N。

j++)if (a[i] < a[j])k = j;max = a[k];a[k] = a[i];a[i] = max;printf("按照从大到小的顺序排列为\n");for (i = 0.i < N。

i++)printf("%d,"。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

命名文件和邮件名相同压缩包内文件无所谓在下周二上课前交Exercise 1: Programming Environment and Basic Input/Output1.Write a program that prints “This is my first program!” on the screen.(a)Save this program onto your own disk with the name of e2-1a;(b)Run this program without opening Turbo C;(c)Modify this program to print “This is my second program!”, thensave it as e2-1b. Please do not overwrite the first program.2.Write a program that prints the number 1 to 4 on the same line. Writethe program using the following methods:(a)Using four “printf” statements.(b)Using one “printf” statement with no conversion specifier . no‘%’).(c)Using one “printf” statement with four conversion specifiers3.(a) Write a program that calculates and displays the number of minutes in 15 days.(b) Write a program that calculates and displays how many hours 180 minutes equal to.(c) (Optional) How about 174 minutesExercise 2: Data Types and Arithmetic Operations1. You purchase a laptop computer for $889. The sales tax rate is 6 percent.Write and execute a C program that calculates and displays the total purchase price (net price + sales tax).2.Write a program that reads in the radius of a circle and prints the circle’s diameter, circumfe rence and area. Use the value for “”.3.Write a program that reads in two numbers: an account balance and an annual interest rate expressed as a percentage. Your program should then display the new balance after a year. There are no deposits or withdraws – just the interest payment. Your program should be able to reproduce the following sample run:Interest calculation program.Starting balance 6000Annual interest rate percentageBalance after one year:Exercise 3: Selection structure1.Write a C program that accepts a student’s numerical grade, converts the numerical grade to Passed (grade is between 60-100), Failed (grade is between 0-59), or Error (grade is less than 0 or greater than 100).2.Write a program that asks the user to enter an integer number, then tells the user whether it is an odd or even number.3.Write a program that reads in three integers and then determines and prints the largest in the group.Exercise 4: ‘switch’ statement and simple “while”repetition statement1. Write a program that reads three integers an abbreviated date (for example: 2612 94) and that will print the date in full; for example: 26th December 1994.The day should be followed by an appropriate suffix, ‘st’, ‘nd’, ‘rd’ or ‘th’. Use at least one switch statement.2.Write a C program that uses a while loop to calculate and print the sum of the even integers from 2 to 30.3. A large chemical company pays its sales staff on a commission basis. They receive£200 per week plus 9% of their gross sales for that week. For example, someone who sells £5000 of chemicals in one week will earn £200 plus 9% of £5000, a total of £650. Develop a C program that will input each salesperson’s sales for the previous week, and print out their salary. Process one person’s figures at a time.Enter sales in pounds (-1 to end):Salary is:Enter sales in pounds (-1 to end):Salary is:Enter sales in pounds (-1 to end):Salary is:Enter sales in pounds (-1 to end): -1Optional:两重的while4. A mail order company sells five different products whose retail prices are shownin the following table:Product Number Retail Price (in pounds)12345Write a C program that reads in a series of pairs of numbers as follows:(1). Product number(2). Quantity sold for one dayYour program should use a switch statement to help determine the retail price for each product, and should use a sentinel-controlled loop to calculate the total retail value of all products sold in a given week (7days).Exercise 5: ‘for’ and ‘do …while”repetition statements1. Write a program which uses a do/while loop to print out the first 10 powers of2 other than 0 (ie. it prints out the values of 21, 22, ..., 210). Use a forloop to do the same.2. The constant can be calculated by the infinite series:= 4 - 4/3 + 4/5 - 4/7 + 4/9 - 4/11 +....Write a C program that uses a do/while loop to calculate using the series. The program should ask the user how many terms in the series should be used. Thus if the user enters ‘3’, then the program should calculate as being 4 - 4/3 + 4/5.Nested repetition3. Write a program that prints the following diamond shape. You may use printf statements that print either a single asterisk (*) or a single blank. Maximize your use of repetition (with nested for statements) and minimize the number of printf statements.*****************************************4. Write a program to print a table as follows:1*1= 12*1= 2 2*2= 43*1= 3 3*2= 6 3*3= 9….9*1= 9 9*2=18 9*3=27 9*4=36 9*5=45 9*6=54 9*7=63 9*8=72 9*9=81Exercise 6: Simple Functions1.Write a C program that reads several numbers and uses the functionround_to_nearest to round each of these numbers to the nearest integer. The program should print both the original number and the rounded number.2.Write a program that reads three pairs of numbers and adds the larger of thefirst pair, the larger of the second pair and the larger of the third pair. Usea function to return the larger of each pair.3. A car park charges a £ minimum fee to park for up to 3 hours, and an additional£ for each hour or part hour in excess of three hours. The maximum charge for any given 24-hour period is £. Assume that no car parks for more than 24 hours at a time.Write a C program that will calculate and print the parking charges for each of 3 customers who parked their car in the car park yesterday. The program should accept as input the number of hours that each customer has parked, and output the results in a neat tabular form, along with the total receipts from the three customers:Car Hours Charge123TOTALThe program should use the function calculate_charges to determine the charge for each customer.Exercise 7: More Functions1. Write a program that uses sentinel-controlled repetition to take an integeras input, and passes it to a function even which uses the modulus operator to determine if the integer is even. The function even should return 1 if the integer is even, and 0 if it is not.The program should take the value returned by the function even and use it to print out a message announcing whether or not the integer was even.2. Write a C program that uses the function integerPower1(base, exponent) to returnthe value of:exponentbaseso that, for example, integerPower1(3, 4) gives the value 3 * 3 * 3 * 3. Assume that exponent is a positive, non-zero integer, and base is an integer. The function should use a for loop, and make no calls to any math library functions.3. Write a C program that uses the recursive function integerPower2(base, exponent)to return the value of:exponentbaseso that, for example, integerPower2(3, 4) gives the value 3 * 3 * 3 * 3. Assume that exponent is a positive, non-zero integer, and base is an integer. The function should make no calls to any math library functions.(Hint: the recursive step will use the relationship:base exponent = base . base exponent - 1and the base case will be when exponent is 1 since : base 1 = base.)Exercise 8: Arrays1. Write a program that reads ten numbers supplied by the user into a singlesubscripted array, and then prints out the average of them.2. Write a program that reads ten numbers supplied by the user into a 2 by 5 array,and then prints out the maximum and minimum values held in:(a) each row (2 rows)(b) the whole array3. Use a single-subscripted array to solve the following problem. Read in 20 numbers,each of which is between 10 and 100, inclusive. As each number is read, print it only if it is not a duplicate of a number already read. Prepare for the “worst case ” in which all 20 numbers are different. Use the smallest possible array to solve this problem.Exercise 9: More Arrays1. Write a program that enters 5 names of towns and their respective distance (aninteger) from London in miles. The program will print of the names of the towns that are less than 100 miles from London. Use arrays and character strings to implement your program.2. Write a program that prompts the user to type in four character strings, placesthese in an array of strings, and then prints out: . I am Peter Pan)(i) The four strings in reverse order. . Pan Peter am I)(ii) The four strings in the original order, but with each string backwards. .I ma reteP naP)(iii) The four strings in reverse order with each string backwards. . naP reteP ma I)Exercise 10: Pointers1. Write a program that reads 5 integers into an array, and then uses fourdifferent methods of accessing the members of an array to print them out in reverse order.2. Write a program that reads 8 floats into an array and then prints outthe second, fourth, sixth and eighth members of the array, and the sum of the first, third, fifth and seventh, using pointers to access the members of the array.3. Write a program that use a SINGLE FUNCTION (用一个函数)to find andreturn simultaneously both the lowest and highest values in an array of type int. Suppose the size of the array is 6.Exercise 11: Files1. Write a program that enters the name and the annual salary of 5employees from the keyboard, calculates the monthly salary of each employee assuming that tax is deducted at a flat rate of 20%. The program prints the name, the annual salary and the monthly payment (net) of each employee in a file. The program adds an employee’s number to each employee before printing the names and values:No. Employee’s Name Annual salary Monthly payment after tax2.Write a program that builds a file with information for 20 towns. Each line in the file contains name of a town followed by the distance ofthe town from London in miles (an integer).3.Write a program reads the file created by the above program (in Question2) and prints the names of the towns that are less than 100 miles fromLondon to ANOTHER file.。

相关文档
最新文档