2015年西工大C语言上机考试题库 全

合集下载

西安工业大学C语言程序设计试题及参考答案-2015

西安工业大学C语言程序设计试题及参考答案-2015

计算机程序设计基础2014-2015学年第二学期一.选择题:(共40分,每题1分)1. 以下选项中,能用作用户标识符的是______。

A)float B)3bc C)_00 D)c#d2. 以下选项中不能用作C程序合法常量的是______。

A)'%d' B)'\123' C)1e-3 D)12.343. sizeof( char )的值是______。

A)8 B)4 C)2 D)14. 若有定义:int x=3,y=2,z=1;,以下选项中错误的赋值表达式是______。

A)z=(x+y)++; B)z=(x=5)+y; C)z=x+++y; D)z=x+y==5;5. 表达式5.8 – 14 / 5 + 14 % 5 的值是______。

A)7.0 B)7.8 C)5.0 D)5.86. 若有定义:int x=2; float y=3;, 则表达式x+y的类型是______。

A)char B)int C)double D)float7. 若有定义:int x ; ,关系表达式1<x<10的值是______。

A)1 B)0 C)-1 D)无法确定8. 若有定义:int x=2, y=3;, 则值为1 的表达式是______。

A)!(x<y) B)!y == '\0' C)x>0 && y<x D)x++==y9. 若char c=’a’;则c=((c>=’a’ && c<=’z’) ? (c-32) : c)的值是______。

A)'a' B)'z' C)'A' D)'Z'10. 若a 是数值类型,则逻辑表达式(a==0) || (a!=0)的值是______。

A)0 B)1 C)2 D)无法判断11. 设int a=3,b=2,c=5,m=8,n=8;求解表达式(m=a>b) || (n=a>c)后m和n分别为______。

2015年计算机等级考试《二级C语言程序设计》机考操作题题库(附答案)

2015年计算机等级考试《二级C语言程序设计》机考操作题题库(附答案)

2015年计算机等级考试《二级C语言程序设计》机考操作题题库(附答案)本卷共分为3大题15小题,作答时间为240分钟,总分200分,120分及格。

一、程序填空题(共50分)1、请补充main()函数,该函数的功能是:计算3名学生各科的平均成绩。

例如,当scoreEN][M]={{85,62,89.5,60,69),{90,96.84.5,100,85},{92,97。

86,73,85})时,五门学科的平均分为:898586.777.779.7。

注意:部分源程序给出如下。

请勿改动main()函数和其他函数中的任何内容,仅在main()函数的横线上填入所编写的若干表达式或语句。

试题程序:2、请补充函数proc(),该函数的功能是:把字符下标为非素数的字符从字符串str中删除,把字符下标为素数的字符重新保存在字符串str中。

字符串str从键盘输入,其长度作为参数传人函数proc()。

例如,输入“helloeverybody”,输出“lleeoy”。

注意:部分源程序给出如下。

请勿改动main()函数和其他函数中的任何内容,仅在函数proc()的横线上填入所编写的若干表达式或语句。

试题程序:3、给定程序中,函数fun()的功能是:把形参s所指字符串中下标为奇数的字符右移到下一个奇数位置,最右边被移出字符串的字符绕回放到第一个奇数位置,下标为偶数的字符不动(注:字符串的长度大于等于2)。

例如,形参s所指的字符串为:abcdefgh,执行结果为:ahcbedgf。

注意:部分源程序给出如下。

请勿改动main()函数和其他函数中的任何内容,仅在fun()函数的横线上填入所编写的若干表达式或语句。

试题程序:4、请补充main()函数,该函数的功能是:把文本文件text2中的内容追加到文本文件text1的内容之后。

例如,文件text2的内容为“1’m very happy!”,文件Text1的内容为“I’m a girl,”,追加之后文件text1的内容为“1’m a girl,I’m very happy”。

西工大c语言试题

西工大c语言试题

第一章1. 一个C源程序必须有一个也只能有一个函数。

2. 是构成C程序的基本单位。

3. 一个C程序总是从函数开始执行的。

4.在C语言中,一个函数一般由两个部分组成,它们是和。

5. C语句是以结束的。

6. 可以用对C程序中的任何部分作注释。

7. 下面4个选项中,均是C语言关键字的选项是。

A) auto B) switch C) else D) ifchar void extern structinclude continue scanf type8. 下面正确的说法是。

A) main函数可以调用其他函数,也可以被其他函数调用B)每个C语言源文件必须包含一个main函数,方可进行编译C) 分号是c语句的一部分D)函数的首部后必须加分号第一章1. main2. 函数 3 main 4.函数的首部函数体 5. ;6. /*. */7. b 8.c第三章1.1. 以下组常量全是合法的C语言常量。

A) ―1\101ab‖ 0f 3.e5 B) ‗abc‘ -0 9eC) ‗$‘ 1e5 0xa D) .5e-5 0198 e3.02. 如有定义:char c=‘\010‘;则变量c中包含的字符个数为。

3. 字符串“ab\n\\012\\\‖‖的长度是。

4. C语言中,整常数18的三种具体表示形式为。

5. C语言中的标识符只能由字母,数字,下划线3种字符组成,且第一个字符。

A)必须为字母B) 必须为下划线C)必须为字母或下划线D)可以为字母、数字、下划线中的任一种字符6. 下列4组选项中,均是C语言合法用户标识符的选项是。

A) timp abc$ suml B) day day_1 _dayC) day-1 3ab sum D) m.d.j 123 class7.C语言中int、char和double三种类型数据在内存中所占字节数的大小关系为。

8.若有定义:char a=123,b=456; int sum; 执行sum=a+b; 后,sum的值是。

c语言上机考试题库

c语言上机考试题库

c语言上机考试题库单项选择题1.有char c=’1’,下面说法中正确的是()。

A. 语句putc+2);的输入结果为51B. 语句put“%d”,c+2);的输出结果为3C. 语句put“%c”,c+2);的输入结果为51D. 语句put“%c”,c+2);的输出结果为32.设c1,c2均就是char型变量,则下面不恰当的函数调用为()。

A. scanf(”c1=2=%c”,&c1,&c2);B. get);C. putc2);D. putc1,c2);3.为了表示关系x>=y>=z,下面C语言表达式中正确的是()。

A. (x>=y)&&(y>=z)B. (x>=y)and(y>=z)C. (x>=y>=z)D. (x>=y)&(y>=z)4.设x,y,z,t为int型变量,则继续执行以下语句后,t的值()。

x=y=z=1;t=++x||++y&&++z;A. 不定值B. 2C. 1D. 05.对if语句中表达式的类型,下面正确的说法是()。

A. 必须就是关系表达式B. 必须是关系表达式或逻辑表达式C. 可以就是任一表达式D. 必须是关系表达式或算术表达式6.对for(表达式1;;表达式3)可以认知为()。

A. for(表达式1;0;表达式3)B. for(表达式1;表达式1;表达式3)C. for(表达式1;1;表达式3)D. for(表达式1;表达式3;表达式3)7.执行语句for(i=1;i++<4;);之后,变量i的值为()。

A. 3B. 4C. 5D. 不确定8.若二维数组a存有m列,则在a[i][j]前的元素个数为()。

A. j*m+iB. i*m+jC. i*m+j-iD. i*m+j+19.下面说法中正确的是()。

A. 在C语言中,可以采用动态内存分配技术,定义元素个数气门的数组B. 在C语言中,数组元素的个数可以不确定,允许随即变动C. 在C语言中,数组元素的数据类型可以不一致D. 在C语言中,定义数组后,就确定了它能容纳的相同数据类型元素的个数10.无法把字符串:“good!”参数值数组b的语句就是()。

全国计算机二级C语言上机试题522015年_真题(含答案与解析)-交互

全国计算机二级C语言上机试题522015年_真题(含答案与解析)-交互

全国计算机二级C语言上机试题52 2015年(总分30, 做题时间90分钟)1.给定程序中,函数fun的功能是:将N×N矩阵中元素的值按列右移1个位置,右边被移出矩阵的元素绕回左边。

例如,N=3,有下列矩阵1 2 34 5 67 8 9计算结果为3 1 26 4 59 7 8请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。

注意:源程序存放在考生文件夹下的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!给定源程序:#include#define N 4void fun(int (*t)[N]){ int i, j, x;/**********found**********/for(i=0; i<___1___; i++){/**********found**********/x=t[i][___2___] ;for(j=N-1; j>=1; j--)t[i][j]=t[i][j-1];/**********found**********/t[i][___3___]=x;}}main(){ int t[][N]={21,12,13,24,25,16,47,38,29,11,32,54,42,21,33,10}, i, j; printf("The original array:\n");for(i=0; i{ for(j=0; jprintf("\n");}fun(t);printf("\nThe result is:\n");for(i=0; i{ for(j=0; jprintf("\n");}}SSS_TEXT_QUSTI分值: 10答案:第一处:函数fun是对N×N矩阵进行操作,for循环的终止值为N。

第二处:把最后一列的元素值赋值给临时变量x保存用来交换,所以应填:N-1。

2015年计算机等级考试《二级C语言程序设计》机考操作题题库(7) (附答案)

2015年计算机等级考试《二级C语言程序设计》机考操作题题库(7) (附答案)

2015年计算机等级考试《二级C语言程序设计》机考操作题题库(7)(附答案)本卷共分为3大题15小题,作答时间为240分钟,总分200分,120分及格。

一、程序填空题(共50分)1请补充main()函数,该函数的功能是:从键盘输人一个字符串及一个指定字符,然后把这个字符及其后面的所有字符全部删除。

结果仍然保存在原串中。

例如,输人“abcdefg”,指定字符为“d”,则输出“abe”。

注意:部分源程序给出如下。

请勿改动main()函数和其他函数中的任何内容,仅在main()函数的横线上填入所编写的若干表达式或语句。

试题程序:2、请补充函数proc(),该函数的功能是:把一个字符串中的字符(字母)按从小到大排序,并把这个全部由字母组成的字符串保存在原串中,函数返回这个字符串的长度。

例如,若输入“abcl2def”,则新字符串为abcdef,字符串长度为6。

注意:部分源程序给出如下。

请勿改动main()函数和其他函数中的任何内容,仅在函数proc()的横线上填入所编写的若干表达式或语句。

试题程序:3、请补充main()函数,该函数的功能是:从键盘输入一组整数,使用条件表达式找出最大的整数。

当输入的整数为0时结束。

例如,输入1,2,3,5,4,7,0时。

最大的数为7。

注意:部分源程序给出如下。

请勿改动main()函数和其他函数中的任何内容,仅在main()函数的横线上填入所编写出的若干表达式或语句。

试题程序:4、str为一个字符序列。

请补充函数proc(),该函数的功能是:查找str中值为x的元素,返回该字符序列中值为x的元素个数,并把这些值为x的元素下标依次保存在数组bb中。

例如,在“abcdedabcdab”中查找“c”,结果为:2个“c”,下标依次为2、8。

注意:部分源程序给出如下。

请勿改动main()函数和其他函数中的任何内容,仅在函数proc()的横线上填入所编写的若干表达式或语句。

试题程序:5、请补充函数proc(),该函数的功能是:把ASCⅡ码为偶数的字符从字符串str中删除,结果仍然保存在字符串str中,字符串str从键盘输入,其长度作为参数传人函数proc()。

2015高考C语言题(2020年整理).doc

2015高考C语言题(2020年整理).doc

试卷编号:8258所属语言:计算机基础试卷方案:111试卷总分:400分共有题型:3种一、程序填空共5题(共计100分)第1题(20.0分)题号:650 难度:中第1章/*-------------------------------------------------------【程序填空】---------------------------------------------------------函数int change(char s[])将s中的数字字符串转换成整数,并返回该数。

例如s[]中为"123",转换后为123。

函数int multi(char s[],char t[])将s字符串转换的整数乘以t字符串转换的整数,并返回乘积。

---------------------------------------------------------注意:请勿改动程序中的其他内容。

-------------------------------------------------------*/#include<stdio.h>int change(char s[]){int i,sum;sum=0;for(i=0;s[i];i++)/**************************SPACE*************************/sum=sum*10+【?】-'0';return sum;}int multi(char s[],char t[]){int mul;/**************************SPACE*************************/mul=【?】;return mul;}int main(){char s1[]="123",s2[]="56";int mst;mst=multi(s1,s2);printf("%d\n",mst);return 0;}答案:=======(答案1)=======s[i]=========或=========*(s+i)=======(答案2)=======change(s)*change(t)=========或=========change(t)*change(s)第2题(20.0分)题号:651 难度:中第1章/*-------------------------------------------------------【程序填空】---------------------------------------------------------函数void check(long n, int c[])检测长整型正整数n是几位数,同时找出最小的数字。

大一c语言上机考试题及答案

大一c语言上机考试题及答案

大一c语言上机考试题及答案一、选择题(每题2分,共20分)1. 下列哪个选项是C语言中的合法变量名?A. 2variableB. variable2C. variable_2D. variable-2答案:C2. C语言中,哪个关键字用于声明一个函数?A. defineB. functionC. defD. void答案:D3. C语言中,哪个运算符用于取模运算?A. %B. /C. *D. -答案:A4. 下列哪个选项是C语言中正确的字符串定义?A. char str[] = "Moonshot";B. char str[] = {"Moonshot"};C. char str[] = 'Moonshot';D. char str[] = "Moonshot'';答案:A5. 在C语言中,以下哪个选项表示逻辑与运算?A. &&B. ||C. ==D. =答案:A二、填空题(每题2分,共20分)1. 在C语言中,定义一个整型变量的正确语法是:int _______;。

答案:变量名2. 在C语言中,使用________运算符可以将字符串连接起来。

答案:+3. C语言中,________关键字用于定义一个结构体。

答案:struct4. 使用________函数可以输出格式化的字符串。

答案:printf5. C语言中,________函数用于计算字符串的长度。

答案:strlen三、编程题(每题10分,共60分)1. 编写一个C语言程序,计算并输出100以内所有奇数的和。

答案:```c#include <stdio.h>int main() {int sum = 0;for (int i = 1; i < 100; i += 2) {sum += i;}printf("Sum of odd numbers from 1 to 99 is: %d\n", sum); return 0;}```2. 编写一个C语言程序,实现字符串反转。

C语言上机试题1-20套

C语言上机试题1-20套

C 语言上机考试题(第一套)1.编写函数fun ,它的功能是:计算并输出下列级数和:)1(1321211+⨯++⨯+⨯=n n S例如,当n = 10时,函数值为:0.909091注意:部分源程序给出如下。

请勿改动主函数main 和其他函数中的任何内容,仅在函数 fun 的花括号中填入你编写的若干语句。

试题程序:#include <conio.h>#include <stdio.h>double fun( int n ){float…………}main() /*主函数 */{ clrscr();printf(″%f\n ″, fun(10));}解答:#include <conio.h> #include <stdio.h> double fun( int n ) { double s=0; int i; for(i=1;i<n+1;i++) s+=1.0/(i*(i+1)); return s; } main() /*主函数 */ { system("cls"); printf("%f\n",fun(10)); }说明:主函数中的clrscr()函数为TC 下使用的清屏函数,在VC 中不能使用,在本题中可以直接删除或改为system("cls")2.在[10000, 20000]范围内考察个位数字是7的素数, 问:(1) 这样的素数有多少个?(2) 其中最大的一个等于几?解答:#include <stdio.h>int main(void){int max,num=0;int i,j;for(i=10000;i<20001;i++){for(j=2;j<i;j++)if( i%j==0 )break;if( j==i && i%10==7){num++;max=i;}}printf("num=%d,max=%d\n",num,max);return 0;}3. 编写程序,从键盘输入一年份,判断该年份是否为闰年。

西工大C语言上机考试题库

西工大C语言上机考试题库

1:2:3#include<stdio.h>#include<math.h>int main(){int i=0,j=0,k=0,a=0,b=0,c=0,l=0,m=0,n=0,d=0,p=0,q=0;for(i=1;i<=3;i++){for(j=1;j<=9;j++){if(i!=j){for(k=1;k<=9;k++){if(k!=j&&i!=k){a=i*100+j*10+k;b=a*2;c=a*3;l=b%10,d=c%10;m=(b%100)/10,p=(c%100)/10;n=b/100,q=c/100;if(l!=0&&m!=0&&n!=0&&d!=0&&p!=0&&q!=0)if(i!=l&&i!=m&&i!=n&&j!=l&&j!=m&&j!=n&&k!=l&&k!=m&&k!=n) if(i!=d&&i!=p&&i!=q&&j!=d&&j!=p&&j!=q&&k!=d&&k!=p&&k!=q)if(l!=d&&l!=p&&l!=q&&m!=d&&m!=p&&m!=q&&n!=d&&n!=p&&n!=q)printf("%d %d %d\n",a,b,c);}}}}}return 0;}8#include"stdio.h"int main(){int a,b[10],m=0,n=0,p;int i,j,k;scanf("%d",&a);for(i=1;i<=a;i++){m=0;n=0;p=i;for(j=0;p!=0;j++){b[j]=p%10;p=p/10;}for(k=0;k<j;k++){m=m+b[k];if(b[k]==8){n=1;}}if(m%8==0){printf("%d ",i);continue;}if(i%8==0){printf("%d ",i);continue;}if(n==1){printf("%d ",i);continue;}}return 0;}8的次数A*B#include <stdio.h>#include <string.h>#include <stdlib.h>void cheng(char a[],char b[]){int i,j,ca,cb,*s;ca=strlen(a);cb=strlen(b);s=(int *)malloc(sizeof(int)*(ca+cb));for (i=0;i<ca+cb;i++) s[i]=0;for (i=0;i<ca;i++)for (j=0;j<cb;j++)s[i+j+1]+=(a[i]-'0')*(b[j]-'0');for (i=ca+cb-1;i>=0;i--)if (s[i]>=10){s[i-1]+=s[i]/10;s[i]%=10;}i=0;while(s[i]==0) i++;for (;i<ca+cb;i++) printf("%d",s[i]);printf("\n");free(s);}int main(){char a[100],b[100];gets(a),gets(b);if(a[0]=='-'&&b[0]!='-'){printf("-");cheng(&a[1],b);}else if(a[0]=='-'&&b[0]=='-'){cheng(&a[1],&b[1]);}else if(a[0]!='-'&&b[0]=='-'){printf("-");cheng(a,&b[1]);}elsecheng(a,b);return 0;}N边形面积#include<stdio.h>#include<math.h>#define PI 3.1415926int main(){double s,a;int n;scanf("%d %lf",&n,&a); s=a*a*n/(2*2*tan(PI/n)); printf("%.2lf\n",s); return 0;}参加竞赛#include<stdio.h>int main(){int a,b,c,d,e;for(a=0;a<2;a++)for(b=0;b<2;b++)for(c=0;c<2;c++)for(d=0;d<2;d++)for(e=0;e<2;e++)if(((a==1&&b==1)||(a==0&&b==0))&&((b==0&&c==1)||(b==1&&c==0))&&((c==1&&d==1)||(c==0&&d==0))&&(!(d==0&&e==0))&&((e==1&&a==1&&d==1)||(e==0))) { if(a==1){printf("A ");}if(b==1){printf("B ");}if(c==1){printf("C ");}if(d==1){printf("D ");}if(e==1){printf("E ");} }return 0;}草坪喷水插入排序#include<stdio.h>void sort(int a[],int n){int i;int k;int t;for(i=1;i<n;i++){t=a[i];k=i-1;while(t<a[k]){a[k+1]=a[k];k--;if(k==-1)break;}a[k+1]=t;}}int main(){int n;int a[100];int i;scanf("%d",&n);for(i=0;i<n;i++)scanf("%d",&a[i]);sort(a,n);printf("\n");for(i=0;i<n;i++)if(i==n-1)printf("%d\n",a[i]);else printf("%d ",a[i]);return 0;}查找车牌号#include<stdio.h> #include<math.h>int main(){int i,j,n;for(i=1;i<=9;i++){for(j=0;j<=9;j++){for(n=33;n<=100;n++){if((n*n)==(i*1100+j*11))printf("%d",i*1100+j*11);}}}return 0;}成绩转化乘完倒序尺子刻度大数除法大数减法#include <stdio.h>#include <string.h>#define max(a,b) a>b?a:b#define min(a,b) a>b?b:aint sum[101];void jia(char a[],char b[]){int flag=0,i,len1,len2,lenmax,lenmin;len1=strlen(a),len2=strlen(b);lenmax=max(len1,len2),lenmin=min(len1,len2); for(i=1;i<=lenmax;i++){if(i<=lenmin){sum[lenmax-i]=a[len1-i]+b[len2-i]-'0'-'0'+flag;if(sum[lenmax-i]>=10){sum[lenmax-i]=sum[lenmax-i]-10;flag=1;}else flag=0;}else{if(len1>len2){sum[lenmax-i]=a[len1-i]-'0'+flag;if(sum[lenmax-i]>=10){sum[lenmax-i]=sum[lenmax-i]-10;flag=1;}else flag=0;}else{sum[lenmax-i]=b[len2-i]-'0'+flag;if(sum[lenmax-i]>=10){sum[lenmax-i]=sum[lenmax-i]-10;flag=1;}else flag=0;}}}if(flag==1)printf("1");for(i=0;i<lenmax;i++)printf("%d",sum[i]);printf("\n");}void jian(char a[],char b[]){int flag=0,i;int len1,len2;len1=strlen(a),len2=strlen(b);for(i=1;i<=len1;i++){if(i<=len2){if(a[len1-i]-b[len2-i]-flag>=0){sum[len1-i]=a[len1-i]-b[len2-i]-flag;flag=0;}else{sum[len1-i]=a[len1-i]-b[len2-i]-flag+10;flag=1;}}else{if(a[len1-i]-flag-'0'>=0){sum[len1-i]=a[len1-i]-flag-'0';flag=0;}else{sum[len1-i]=a[len1-i]-flag+10-'0';flag=1;}}}for(i=0;i<len1&&sum[i]==0;i++);for(;i<len1;i++)printf("%d",sum[i]);printf("\n");}void compare(char a[],char b[]){int len1,len2;len1=strlen(a),len2=strlen(b);if(len1>len2||(len1==len2&&strcmp(a,b)>0)) jian(a,b);else if(strcmp(a,b)!=0){printf("-");jian(b,a);}elseprintf("0\n");}int main(){char a[100],b[100];gets(a);gets(b);if(a[0]=='-'&&b[0]!='-'){printf("-");jia(&a[1],b);}else if(a[0]=='-'&&b[0]=='-')compare(&b[1],&a[1]);else if(a[0]!='-'&&b[0]=='-')jia(a,&b[1]);elsecompare(a,b);return 0;}大写变小写#include<stdio.h>#include<string.h>int main(){char s[80];int len,i;gets(s);len=strlen(s);for(i=0;i<len;i++){if(s[i]>='a'&&s[i]<='z')s[i]=s[i]-32; }puts(s);return 0;}到底星期几等比数列#include <stdio.h>#include <stdlib.h>int main(){int m,n,sum;scanf ("%d",&m);for (n=1; ;n++) {sum=(3*n-1)*n/2; if (sum>m) break;}printf ("%d",n);return 0;}分数#include<stdio.h> int main(){int k,x=1,y=1;float a,b;scanf("%d",&k);for(;y<=5000;y++){for(x=y;x<=5000;x++){a=1.0/k;b=1.0/x+1.0/y;if(a==b)printf("1/%d=1/%d+1/%d\n",k,x,y);}}return 0;}韩信点兵#include<stdio.h>int main(){int n,i;for (i=0;;i++) {if (i%5==2&&i%6==3&&i%7==4&&i%11==5) {printf("%d",i);break;} }return 0;}回文字符串#include<stdio.h>#include<string.h>#include<ctype.h>#define MAXN 5000+10 char buf[MAXN],s[MAXN]; int p[MAXN];int main(){int n,m=0,max=0,x,y;int i,j;fgets(buf,sizeof(s),stdin);n=strlen(buf);for(i=0;i<n;i++){if(isalpha(buf[i])){p[m]=i;s[m++]=toupper(buf[i]);}}for(i=0;i<m;i++){for(j=0;i-j>=0&&i+j<m;j++){if(s[i-j]!=s[i+j])break;if(j*2+1>max){max=j*2+1;x=p[i-j];y=p[i+j];} }for(j=0;i-j>=0&&i+j+1<m;j++){if(s[i-j]!=s[i+j+1])break;if(j*2+2>max){max=j*2+2;x=p[i-j];y=p[i+j+1];} }}for(i=x;i<=y;i++)printf("%c",buf[i]);printf("\n");return 0;}#include<iostream>using namespace std;int main(){char A[5000],B[5000];int a=0,b,c,d,e,f,n=0,m,p,q,C[5000];while((A[a]=cin.get())!='\n') a++;for(b=0,c=0;b<=a-1;b++){if((A[b]>=65&&A[b]<=90)||(A[b]>=97&&A[b]<=122)){B[c]=A[b],C[c]=b;if(B[c]>=97&&B[c]<=122) B[c]=B[c]-32;c++;}}B[c]=32;for(d=0;d<=c-2;d++){if(B[d]==B[d+1]) e=d,f=d+1,a=1;else if(B[d]==B[d+2]) e=d,f=d+2,a=1;else continue;while(e-1>=0&&f+1<=c&&B[e-1]==B[f+1]) e--,f++;m=f-e;if(m>n) n=m,p=e,q=f;}for(a=C[p];a<=C[q];a++)cout<<A[a];cout<<endl;}鸡的体重计算数据整数部分加密#include<stdio.h>#include<string.h>int main(){FILE*pi;pi=fopen("in.dat","w");char A[1000],B[1000];int i,n;gets(A);n=strlen(A);for(i=0;i<n;i++){fprintf(pi,"%c",A[i]);if('A'<=A[i]<'Z'||'a'<=A[i]<'z')B[i]=A[i]+1;if(A[i]=='Z'||A[i]=='z')B[i]=A[i]-25;}for(i=0;i<n;i++)printf("%c",B[i]);fclose(pi);return 0;}阶乘#include<stdio.h>int main(){int n;int i=2;int j=1;scanf("%d",&n); while(1){j=j*i;if(j>n) break;i++;}printf("%d\n",i-1); return 0;}卡片恐怖水母#include<stdio.h>void paixu(int A[],int m){int i=1,n=0,j=0;for(;j<m;j++){for(i=j+1;i<m;i++){if(A[i]<A[j]){n=A[j];A[j]=A[i];A[i]=n;}}}}int main(){int n=0,m=0,A[100]={0},B[100]={0},i=0,j=0,k=0;scanf("%d%d",&n,&m);for(i=0;i<n;i++)scanf("%d",&A[i]); }for(i=0;i<m;i++){scanf("%d",&B[i]); }if(m<n){printf("NULL\n");}else{paixu(A,n);paixu(B,m);for(i=0;i<m;i++) {if(A[0]<=B[i]){if(m-i>=n){for(k=0;k<n;k++) {j+=B[i+k];}printf("%d\n",j);}else{printf("NULL\n");}break;}}}return 0;}快速排序#include<stdio.h>void QuickSort(int A[],int n,int L,int R) {int i,j,t;if(L<R){i=L;j=R+1;while(1){while(i+1<n&&A[++i]<A[L]);while(j-1>-1&&A[--j]>A[L]);if(i>=j)break;t=A[i];A[i]=A[j];A[j]=t;}t=A[L],A[L]=A[j],A[j]=t;QuickSort(A,n,L,j-1);QuickSort(A,n,j+1,R);}}int main(){int A[1000],n,i,j,p;scanf("%d",&n);if(n>=1000) {printf("Overflow!!!") ;return 0; }//输入要排序的元素的数目,若大于1000则结束程序输出“Overflow!!!”for(i=0;i<n;i++)scanf("%d",&A[i]); //输入元素QuickSort(A,n,0,n-1);for(i=n-1;i>=0;i--)printf("%d ",A[i]); //输出排序好的结果return 0;}两人三足#include<stdio.h>int main(){int n,a[50],i,j,t,sum=0;scanf("%d\n",&n);for (i=0;i<n;i++) scanf("%d",&a[i]);for (i=0;i<n;i++) {for (j=0;j<n-i-1;j++) {if (a[j]<a[j+1]) t=a[j],a[j]=a[j+1],a[j+1]=t;}}for (i=0;i<n;i+=2) sum+=a[i];printf("%d",sum);return 0;}逆序输出偶数和#include <stdio.h>#include <stdlib.h>int main(){int n,i,sum=0;scanf("%d",&n);int a[n];for(i=0;i<n;i++){scanf("%d",&a[i]);}for(i=0;i<n;i++){if(i%2==0)sum=sum+a[i];} printf("%d",sum);return 0;}三角形面积士兵移动输出位数#include<stdio.h>int main(){int i,n;scanf("%d",&n);for(i=1;;i++){if(n/10==0)break;else n=n/10;}printf("%d",i);}数列#include<stdio.h>int main(){int A[10],B[5],i;double C[5];for(i=0;i<5;i++)scanf("%d",&A[i]);for(i=0;i<4;i++){B[i]=A[i+1]-A[i];C[i]=(double)A[i+1]/A[i];}if(B[0]==B[1]&&B[1]==B[2]&&B[2]==B[3]){for(i=5;i<10;i++)A[i]=A[i-1]+B[0],printf("%d ",A[i]);return 0;}if(C[0]==C[1]&&C[1]==C[2]&&C[2]==C[3]){for(i=5;i<10;i++)A[i]=A[i-1]*C[0],printf("%d ",A[i]);return 0;}if((A[0]+A[1]==A[2])&&(A[1]+A[2]==A[3])&&(A[2]+A[3]==A[4])){ for(i=5;i<10;i++)A[i]=A[i-1]+A[i-2],printf("%d ",A[i]);return 0;}printf("NULL");return 0;}数字加密数组元素和水仙花数提取字符串#include <stdio.h>#include<string.h>int main(){char A[100];char l[100];gets(A);int m,n,i,j;scanf("%d",&m);n=strlen(A);for (i=m;i<n;i++){l[i]=A[i];}for (j=m;j<n;j++){printf("%c",l[j]);}printf("\n");return 0;}添加行号#include<stdio.h>#include<string.h>int main(){char A[3][100],B[3][100];int i;FILE*fp;fp=fopen("b.c","w");for(i=0;i<3;i++)gets(A[i]);fprintf(fp,"0001 ");fputs(A[0],fp);fprintf(fp,"\n""0002 ");fputs(A[1],fp);fprintf(fp,"\n""0003 ");fputs(A[2],fp);fprintf(fp,"\n");fclose(fp);printf("0001 ");puts(A[0]);printf("0002 ");puts(A[1]);printf("0003 ");puts(A[2]);return 0;}舞伴配对相乘后位数相加#include <stdio.h>int main(){int k;long a,b;scanf("%ld%ld",&a,&b);if(a==0||b==0)printf("0\n");else{k=(a%9)*(b%9)%9;if(k==0)printf("9\n");elseprintf("%d\n",k);}return 0;}#include <iostream>using namespace std;int main(){char A[13],B[13];int a=0,b=0,c,d,e,f,m=0,X[13],Y[13]; for(c=0;c<=12;c++)X[c]=0,Y[c]=0;while((A[a]=cin.get())!=32) a++; while((B[b]=cin.get())!='\n') b++; for(c=0,a--;a>=0;a--,c++)X[c]=A[a]-48;for(d=0,b--;b>=0;b--,d++)Y[d]=B[b]-48;for(e=0;e<=c-1;e++)for(f=0;f<=d-1;f++)m=m+X[e]*Y[f];while(m>10){a=m%10,m=(m-a)/10+a; }cout<<m<<endl;return 0;}销售记录#include<stdio.h>#include<string.h>typedef struct tagME{char a0[5];char a1[11];char a2[20];int a3;int a4;}tag;int main(){ tag a[100],b[100];int n,i,j=1,k=0;FILE *fp;scanf("%d",&n);for(i=0;i<=n-1;i++){scanf("%s %s %s %d %d",a[i].a0,a[i].a1,a[i].a2,&a[i].a3,&a[i].a4);} fp=fopen("out.dat","w");if(fp!=NULL){for(j=0;j<=n-1;j++){fscanf(fp,"%s%s%s%d%d",a[j].a0,a[j].a1,a[j].a2,&a[j].a3,&a[j].a4);}for(i=0;i<=n-2;i++){if(a[i].a4>=a[i+1].a4)b[0]=a[i],a[i]=a[i+1],a[i+1]=b[0];}printf("%s %s %s %d %d",a[i].a0,a[i].a1,a[i].a2,a[i].a3,a[i].a4);fclose(fp);}return 0;}星期几星座#include <stdio.h>int main(){int a,b;scanf("%d%d",&a,&b);switch (a){case 1:if(b<=19)printf("Capricorn");else printf("Aquarius");break;case 2:if(b<=18)printf("Aquarius");else printf("Pisces");break;case 3:if(b<=20)printf("Pisces");else printf("Aries");break;case 4:if(b<=20)printf("Aries");else printf("Taurus");break;case 5:if(b<=20)printf("Taurus");else printf("Gemini");break;case 6:if(b<=21)printf("Gemini");else printf("Cancer");break;case 7:if(b<=22)printf("Cancer");else printf("Leo");break;case 8:if(b<=22)printf("Leo");else printf("Virgo");break;case 9:if(b<=22)printf("Virgo");else printf("Libra");break;case 10:if(b<=22)printf("Libra");else printf("Scorpio");break;case 11:if(b<=21)printf("Scorpio");else printf("Sagittarius");break;case 12:if(b<=21)printf("Sagittarius");else printf("Capricorn");break;}return 0;}幸运数学号循环移位#include <stdio.h>int move(int value,int n){if(n<0){n=-n;value=(value<<n|value>>(32-n));}elsevalue=(value>>n|value<<(32-n));return(value);}int main(){int x,y;scanf("%d %d",&x,&y);printf("%d\n",move(x,y));return 0;}月份天数#include <stdio.h>int main(){int y,m,d;int A[13]={0,31,29,31,30,31,30,31,31,30,31,30,31};int B[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};scanf("%d%d",&y,&m);if((y%4==0&&y%100!=0)||(y%400==0))d=A[m];elsed=B[m];printf("%d",d);return 0; }月份转换英语运费职工信息字符串替换#include<stdio.h> #include<string.h> int main(){char A[100],B[100];int i;gets(A);for(i=0;i<100;i++){if(A[i]=='y'&&A[i+1]=='o'&&A[i+2]=='u') {A[i]='w';A[i+1]='e';A[i+2]=' ';}}for(i=0;A[i]!='\0';i++){if(A[i-2]=='w'&&A[i-1]=='e'&&A[i]==' ') continue;elseprintf("%c",A[i]);}printf("\n");return 0;}字符串长度字符输出#include<stdio.h>#include<string.h>int main(){char A[200],B[200];int p,n,i,j=0;gets(A);scanf("%d%d",&p,&n);for(i=p;i<=p+n-1;i++,j++){B[j]=A[i];}puts(B);}。

C语言编程答案(工大题库)

C语言编程答案(工大题库)

1、输入一个字符,判断它是否是大写字母,如果是,将它转换成小写字母;如果不是,不转换。

然后输出最后得到的字符。

#include<stdio.h>int main(){char c1;printf("input a latter:\n");scanf("%c",&c1);if(c1>='A'&&c1<='Z')c1=c1+32;printf("%c",c1);return 0;}2、输入一行字符,分别统计出其中英文字母、空格、数字和其他字符的个数。

#include<stdio.h>int main(){char c;int letters=0,space=0,digit=0,other=0;printf("Please input letters:\n");while((c=getchar())!='\n'){if(c>='a'&&c<='z'||c>='A'&&c<='Z')letters++;else if(c>='0'&&c<='9')digit++;else if(c==' ')space++;elseother++;}printf("字母数:%d\n数字数:%d\n空格数:%d\n其他字母数:%d\n",letters,digit,space,other);return 0;},利用主函数调用这个函数并输出结果。

3、编写一个函数,求数列1+1/2+1/3+1/4+1/5+...1/n#include<stdio.h>int main(){int n;float c;float sum(int n);scanf("%d",&n);c=sum(n);printf("%f\n",c);}float sum(int n){int i;float sum=0.0;for(i=1;i<=n;i++)sum=sum+1.0/i;return sum;}4、输入一个字符,判断它是否是小写字母,如果是,将它转换成大写字母;如果不是,不转换。

C语言上机题库

C语言上机题库

姓名:学号:机号:成绩:姓名:学号:机号:成绩:姓名:Array学号:编写一程序,输入x值,输出y值。

机号:成绩:姓名:例如,输入123,输出321。

学号:机号:成绩:姓名:学号:机号:成绩:姓名:学号:机号:成绩:姓名:学号:机号:成绩:姓名:学号:机号:成绩:姓名:学号:机号:成绩:姓名:学号:机号:成绩:姓名:学号:机号:成绩:姓名:学号:机号:成绩:姓名:学号:机号:成绩:姓名:学号:机号:成绩:姓名:的所有整数。

学号:机号:成绩:姓名:字之积为42,三位数字之和为12。

学号:机号:成绩:姓名:学号:机号:成绩:姓名:学号:机号:成绩:式如下:111114357nπ=-+-+⋅⋅⋅⋅⋅⋅+姓名:Array学号:写一程序,输入x值,输出y值。

机号:成绩:姓名:输入1234,输出4321。

学号:机号:成绩:姓名:学号:机号:成绩:姓名:学号:机号:成绩:姓名:学号:机号:成绩:姓名:学号:机号:成绩:姓名:学号:机号:成绩:姓名:学号:机号:成绩:姓名:学号:机号:成绩:姓名:学号:机号:成绩:姓名:学号:机号:成绩:特朗数,如:407=4^3+0^3+7^3。

试编程求出1000以内的所有阿姆斯特朗数,并输出。

姓名:学号:机号:成绩:姓名:学号:机号:成绩:姓名:和。

学号:机号:成绩:姓名:余5的所有整数。

学号:机号:成绩:姓名:字之积为45,三位数字之和为15。

学号:机号:成绩:姓名:4的所有整数。

学号:机号:成绩:姓名:字之积为48,三位数字之和为15。

学号:机号:成绩:姓名:学号:机号:成绩:姓名:学号:机号:成绩:姓名:学号:机号:成绩:姓名:学号:机号:成绩:数,其各位数字立方和等于该数本身。

例如:153是一个水仙花数,因为153=13+53+33。

姓名:写字母;如果不是,不转换。

然后输出最后得到的字符。

学号:机号:成绩:姓名:学号:机号:成绩:姓名:学号:机号:成绩:姓名:学号:机号:成绩:姓名:低于60,输出“Fail”,否则,输出“Pass”。

c上机考试试题

c上机考试试题

c上机考试试题# C上机考试试题一、单项选择题(每题2分,共20分)1. 下列关于C语言基本数据类型的说法中,错误的是()。

- A. `int` 类型通常用于表示整数- B. `float` 类型用于表示单精度浮点数- C. `double` 类型用于表示双精度浮点数- D. `char` 类型用于表示一个字符或整数2. 在C语言中,用于定义数组的关键字是()。

- A. `define`- B. `array`- C. `list`- D. `int[]`3. C语言标准输入输出使用的库函数是()。

- A. `<stdio.h>`- B. `<math.h>`- C. `<stdlib.h>`- D. `<iostream>`4. 下列哪个是C语言中的合法标识符?()- A. `class`- B. `case`- C. `2b`- D. `user_name`5. C语言中,用于实现字符串连接的函数是()。

- A. `strcpy()`- B. `strcat()`- C. `strlen()`- D. `strncpy()`6. 在C语言中,`printf` 函数的返回类型是()。

- A. `int`- B. `float`- C. `char`- D. `void`7. 下列关于C语言函数的描述中,错误的是()。

- A. 函数可以返回一个值- B. 函数可以没有返回值- C. 函数必须有返回值- D. 函数可以有多个返回值8. 在C语言中,用于计算两个整数的最大值的宏定义在哪个头文件中?()- A. `<math.h>`- B. `<stdlib.h>`- C. `<limits.h>`- D. `<stdio.h>`9. C语言中,`break` 语句的作用是()。

- A. 跳出整个循环- B. 跳出最近的一个循环- C. 跳出整个程序- D. 继续下一次循环10. 下列关于C语言结构体的描述中,错误的是()。

西工大C程序设计测试题

西工大C程序设计测试题
第二套测试题
一、选择题(单选,2分×12=24分)
1. 下列有关C标识符的说法错误的是 D 。
A)C标识符的首字符必须是字母或下划线 B)标识符中的字母有大
小写之分
C)全局量和局部量的标识符可以相同 D)关键字也能作为标识符
2. 下列哪一组C常量全部合法 D 。
A)‘\x789’le2 “7:30’40\”\n” B)“-123.456” 0.0 2.7le-0.5
2. 设有两个方阵A、B,编程利用数组,求矩阵A与矩阵B的和矩阵C, 并找出和矩阵C主对角线最大元素及其位置。 要求:1)用自定义函数input实现数组的输入;
2)用自定义函数add实现矩阵的加运算; 3)用自定义函数diag_max实现查找; 4)在主函数输出和矩阵、输出查找结果。
则执行语句:x=x*M2; 后变量x的值为 C 。
A)108 B)6 C)24 D)1
12. 下列对Turbo C热键与功能的关系描述不正确的是 B 。
A)F7——启动单步跟踪执行 B)F9——启动预编译
C)Ctrl+Y——删行
D)Ctrl+F7——设置监视变量
二、填空题(1分×16=16分)
1. 将代数式写成C的表达式应为 (-b+sqrt(b*b-4*a*c)/(2*a) 。
printf(“%d,%d,%d”, sizeof(p1),sizeof(p2),sizeof(p3)); 的执行结果为2,
2,2 。
8. 若有定义int i, j,a[3][5],(*p)[5];并有i=j=2; p=a;当p保持不变时,
*(p+i)+j与 &a[2][2] 等价,若有p++, p的增量为 10 。

c语言试题含答案

c语言试题含答案

西北工业大学印制
共 9 页
第 3 页
3.写出下面程序的运行结果。 #include <stdio.h> void main() { int k=1,n=263 ; do { k*= n%10 ; n/=10 ; } while (n) ; printf("%d\n",k); } 4.下面程序的功能是:将 n 个无序整数从小到大排序;判断下面程序的正误,如果错误请改正过来。 #include <stdio.h> void main() { int a[100], i, j, p, t, n=20 ; for ( j = 0; j<n ; j++ ) scanf(”%d”, &a[j]), for ( j = 0; j<n-1 ; j++ ) { p = j; for ( i=j+1; i<n-1 ; i++ ) if ( a[p]>a[i] ) t=i; if ( p!=j ) { t = a[j]; a[j] = a[p]; a[p] = t; } } for ( j = 0; j<n ; j++ ) printf(”%d” &a[j]); , }
。 的值是 b

17.将文件指针移到文件当前位置前 40 个字节的 C 语言语句是 指针移到文件当前位置后 10 个字节的 C 语言语句是 三、综合题(每题 6 分,5 小题,共 30 分) 1.写出下面程序执行后的运行结果。 #include <stdio.h> void main() { int y=3,x=3,z=1; printf("%d %d\n",(++x,y++),z+2); } 。

西工大C语言实验考题及答案

西工大C语言实验考题及答案

#include <iostream> using namespace std;int main(){int A[100],n,i;cin>>n;for(i=0;i<n;i++)cin>>A[i];for(i=1;i<n;i=i+2)cout<<A[i]<<" ";return 0;}#include <iostream>using namespace std;int main(){char a,b,c;for(a='X';a<='Z';a++)for(b='X';b<='Z';b++)for(c='X';c<='Z';c++){if(a=='Z'&&b=='Y'&&c=='X')cout<<"A="<<a<<endl<<"B="<<b<<endl<<"C= "<<c;break;}return 0;}#include <iostream>using namespace std;int main(){char a,b,c;for(a='X';a<='Z';a++)for(b='X';b<='Z';b++)for(c='X';c<='Z';c++){if(a=='Z'&&b=='Y'&&c=='X')cout<<"A="<<a<<endl<<"B="<<b<<endl<<"C="<<c;break;}return 0;}#include <stdio.h> #include <math.h> int main(){double a;int i=0;scanf("%lf",&a); while(fabs(a)>=1){ a=a/10;i++;}printf("%d",i); return 0;}#include <iostream>using namespace std;int main(){int i,j,k,s,x;for(i=30;i<=100;i++){for(j=1;j<=9;j++)for(k=0;k<=9;k++){s=j*1000+j*100+k*10+k;if(j!=k&&s==i*i){cout<<s;break;} }}return 0;}#include <iostream> #include<string> using namespace std;int main(){string s1,s2;cin>>s1;cin>>s2;if(s1>s2)cout<<1<<endl;if(s1==s2)cout<<0<<endl;if(s1<s2)cout<<-1<<endl;return 0;}#include <iostream>using namespace std;int hb(int n){while(n!=0){if(n%10==8) return 1;n=n/10;}}int cb(int n){if(n%8==0)return 1;else return 0;}int jb(int n){ int a,s=0;while(n!=0){a=n%10;s=s+a;n=n/10;}if(s==8)return 1;else return 0;}int main(){int n,i;cin>>n;for(i=1;i<=n;i++)if(hb(i)||cb(i)||jb(i))cout<<i<<" "; return 0;}。

C语言正式上机题

C语言正式上机题

C语⾔正式上机题C语⾔上机实验题⽬1 打印图形1.输⼊n值,打印下列图形:**************** 当n = 4时2.输⼊n值,打印下列⾼和上底均为n 的等腰梯形:**************************** 当n = 4时3.输⼊n值,打印下列⾼和下底均为n 的等腰梯形:**************************** 当n = 4时4.输⼊n值,打印下列⾼和上底均为n的等腰空⼼梯形:****** ** ** ************** 当n = 5时5.输⼊n值,打印下列⾼和下底均为n的等腰空⼼梯形:************** ** ** ****** 当n=5时6.编写程序打印下列上三⾓形式的乘法九九表:1 2 3 4 5 6 7 8 9 ——————————————————1 2 3 4 5 6 7 8 94 6 8 10 12 14 16 1825 30 35 40 4536 42 48 5449 56 6364 72817.编写程序打印下列乘法九九表:1 2 3 4 5 6 7 8 9 ——————————————————8164 7249 56 6336 42 48 5425 30 35 40 4516 20 24 28 32 369 12 15 18 21 24 274 6 8 10 12 14 16 181 2 3 4 5 6 7 8 98.编程打印数字⾦字塔:11 2 11 2 3 2 11 2 3 4 3 2 11 2 3 4 5 4 3 2 11 2 3 4 5 6 5 4 3 2 11 2 3 4 5 6 7 6 5 4 3 2 11 2 3 4 5 6 7 8 7 6 5 4 3 2 11 2 3 4 5 6 7 8 9 8 7 6 5 4 3 2 1 9.编程打印数字⾦字塔:1 2 3 4 5 6 7 8 9 8 7 6 5 4 3 2 11 2 3 4 5 6 7 8 7 6 5 4 3 2 11 2 3 4 5 6 7 6 5 4 3 2 11 2 3 4 5 6 5 4 3 2 11 2 3 4 5 4 3 2 11 2 3 4 3 2 11 2 3 2 110.输⼊n值,打印边长为n的空⼼正六边形:******* ** ** ** ** ** ** ** ** ******* 当n = 6时11.编写程序输出下⾯的图形,要求输⼊顶⾏字符和图形的⾼。

(完整版)C语言上机练习题及答案

(完整版)C语言上机练习题及答案

(完整版)C语言上机练习题及答案1输入三个整数x,y,z,把这三个数由小到大输出。

# includevoid main(){int x,y,z,a;scanf ("%d,%d,%d",&x,&y,&z);if(x>y) {a=x; x=y;y=a;}if(x>z) { a=x; x=z; z=a;}if(y>z) {a=y; y=z; z=a;}printf("%d,%d,%d\n",x,y,z);}2输入圆的半径,输出圆的周长和面积。

# include# define PI 3.1415926# define S ==PI*r*r# define V (4.0/3)*PI*r*r*rvoid main(){double r;printf("please input r:");scanf("%lf",&r);printf("area is %.4lf\n",S);printf("volume is %.4lf\n",V);}输入正方形的边长,输出正方形的周长和面积。

# includevoid main(){float c,zc,mj;printf("输入你的正方形");scanf("%f\n",&c);zc=4*c;mj=c*c;printf("周长%f,面积%f,边长%f",zc,mj,c);}3用格式输入函数输入3个字符,并用输出函数反向输出3个字符和他们的ASCII 码。

# includeint main(){char-ch1,ch2,ch3;printf("please input three characters:\n");scanf("%C%C%c",&ch1,&ch2,&ch3);printf("%c\n%d\n",ch3,ch3);printf("%c\n%d\n",ch2,ch2);printf("%c\n%d\n",ch1,ch1);}输入一个摄氏温度,要求输出华氏温度。

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

1.1:2:32.一堆83.8的次数4.A*B5.N边形面积6.参加竞赛7.草坪喷水8.插入排序9.查找10.车牌号11.成绩转化12.大数>> (见NOJ)13.大写变小写14.到底星期几15.等比数列16.找到正整数符合要求17、韩信点兵18.回文字符串鸡的体重计算数据整数部分加密阶乘恐怖水母卡片快速排序两人三足逆序输出偶数和三角形面积士兵移动输出位数数列数字加密数组元素和水仙花数提取字符串添加行号舞伴配对相乘后位数相加销售记录星期几星座幸运数学号循环移位月份天数月份转换英语运费字符串替换字符输出总分最高最大公约数最大值最小值最小公倍数左下角#include<stdio.h>#include<math.h>int main(){int i=0,j=0,k=0,a=0,b=0,c=0,l=0,m=0,n=0,d=0,p=0,q=0;for(i=1;i<=3;i++){for(j=1;j<=9;j++){if(i!=j){for(k=1;k<=9;k++){if(k!=j&&i!=k){a=i*100+j*10+k;b=a*2;c=a*3;l=b%10,d=c%10;m=(b%100)/10,p=(c%100)/10;n=b/100,q=c/100;if(l!=0&&m!=0&&n!=0&&d!=0&&p!=0&&q!=0)if(i!=l&&i!=m&&i!=n&&j!=l&&j!=m&&j!=n&&k!=l&&k!=m&&k!=n) if(i!=d&&i!=p&&i!=q&&j!=d&&j!=p&&j!=q&&k!=d&&k!=p&&k!=q)if(l!=d&&l!=p&&l!=q&&m!=d&&m!=p&&m!=q&&n!=d&&n!=p&&n!=q)printf("%d %d %d\n",a,b,c);}}}}}return 0;}#include"stdio.h"int main(){int a,b[10],m=0,n=0,p;int i,j,k;scanf("%d",&a);for(i=1;i<=a;i++){m=0;n=0;p=i;for(j=0;p!=0;j++){b[j]=p%10;p=p/10;}for(k=0;k<j;k++){m=m+b[k];if(b[k]==8){n=1;}}if(m%8==0){printf("%d ",i);continue;}if(i%8==0){printf("%d ",i);continue;}if(n==1){printf("%d ",i);continue;}}return 0;}3.8的次数4.A*B#include <stdio.h>#include <string.h>#include <stdlib.h>void cheng(char a[],char b[]){int i,j,ca,cb,*s;ca=strlen(a);cb=strlen(b);s=(int *)malloc(sizeof(int)*(ca+cb));for (i=0;i<ca+cb;i++) s[i]=0;for (i=0;i<ca;i++)for (j=0;j<cb;j++)s[i+j+1]+=(a[i]-'0')*(b[j]-'0');for (i=ca+cb-1;i>=0;i--)if (s[i]>=10){s[i-1]+=s[i]/10;s[i]%=10;}i=0;while(s[i]==0) i++;for (;i<ca+cb;i++) printf("%d",s[i]);printf("\n");free(s);}int main(){char a[100],b[100];gets(a),gets(b);if(a[0]=='-'&&b[0]!='-'){printf("-");cheng(&a[1],b);}else if(a[0]=='-'&&b[0]=='-'){cheng(&a[1],&b[1]);}else if(a[0]!='-'&&b[0]=='-'){printf("-");cheng(a,&b[1]);}elsecheng(a,b);return 0;}5.N边形面积#include<stdio.h>#include<math.h>#define PI 3.1415926int main(){double s,a;int n;scanf("%d %lf",&n,&a);s=a*a*n/(2*2*tan(PI/n));printf("%.2lf\n",s);return 0;}6.参加竞赛#include<stdio.h>int main(){int a,b,c,d,e;for(a=0;a<2;a++)for(b=0;b<2;b++)for(c=0;c<2;c++)for(d=0;d<2;d++)for(e=0;e<2;e++)if(((a==1&&b==1)||(a==0&&b==0))&&((b==0&&c==1)||(b==1&&c==0))&&((c==1&&d==1)||(c==0&&d==0))&&(!(d==0&&e==0))&&((e==1&&a==1&&d==1)||(e==0))) { if(a==1){printf("A ");}if(b==1){printf("B ");}if(c==1){printf("C ");}if(d==1){printf("D ");}if(e==1){printf("E ");} }return 0;}7.草坪喷水8.插入排序#include<stdio.h> void sort(int a[],int n) {int i;int k;int t;for(i=1;i<n;i++){t=a[i];k=i-1;while(t<a[k]){a[k+1]=a[k];k--;if(k==-1)break;}a[k+1]=t;}}int main(){int n;int a[100];int i;scanf("%d",&n);for(i=0;i<n;i++)scanf("%d",&a[i]);sort(a,n);printf("\n");for(i=0;i<n;i++)if(i==n-1)printf("%d\n",a[i]);else printf("%d ",a[i]);return 0;}9.查找10.车牌号#include<stdio.h>#include<math.h>int main(){int i,j,n;for(i=1;i<=9;i++){for(j=0;j<=9;j++){for(n=33;n<=100;n++){if((n*n)==(i*1100+j*11))printf("%d",i*1100+j*11);}}}return 0;}11.成绩转化乘完倒序尺子刻度大数除法12.大数减法#include <stdio.h>#include <string.h>#define max(a,b) a>b?a:b#define min(a,b) a>b?b:aint sum[101];void jia(char a[],char b[]){int flag=0,i,len1,len2,lenmax,lenmin;len1=strlen(a),len2=strlen(b);lenmax=max(len1,len2),lenmin=min(len1,len2); for(i=1;i<=lenmax;i++){if(i<=lenmin){sum[lenmax-i]=a[len1-i]+b[len2-i]-'0'-'0'+flag;if(sum[lenmax-i]>=10){sum[lenmax-i]=sum[lenmax-i]-10;flag=1;}else flag=0;}else{if(len1>len2){sum[lenmax-i]=a[len1-i]-'0'+flag;if(sum[lenmax-i]>=10){sum[lenmax-i]=sum[lenmax-i]-10;flag=1;}else flag=0;else{sum[lenmax-i]=b[len2-i]-'0'+flag;if(sum[lenmax-i]>=10){sum[lenmax-i]=sum[lenmax-i]-10;flag=1;}else flag=0;}}}if(flag==1)printf("1");for(i=0;i<lenmax;i++)printf("%d",sum[i]);printf("\n");}void jian(char a[],char b[]){int flag=0,i;int len1,len2;len1=strlen(a),len2=strlen(b);for(i=1;i<=len1;i++){if(i<=len2){if(a[len1-i]-b[len2-i]-flag>=0){sum[len1-i]=a[len1-i]-b[len2-i]-flag;flag=0;}else{sum[len1-i]=a[len1-i]-b[len2-i]-flag+10;flag=1;}}else{if(a[len1-i]-flag-'0'>=0){sum[len1-i]=a[len1-i]-flag-'0';flag=0;}elsesum[len1-i]=a[len1-i]-flag+10-'0';flag=1;}}}for(i=0;i<len1&&sum[i]==0;i++);for(;i<len1;i++)printf("%d",sum[i]);printf("\n");}void compare(char a[],char b[]){int len1,len2;len1=strlen(a),len2=strlen(b);if(len1>len2||(len1==len2&&strcmp(a,b)>0)) jian(a,b);else if(strcmp(a,b)!=0){printf("-");jian(b,a);}elseprintf("0\n");}int main(){char a[100],b[100];gets(a);gets(b);if(a[0]=='-'&&b[0]!='-'){printf("-");jia(&a[1],b);}else if(a[0]=='-'&&b[0]=='-')compare(&b[1],&a[1]);else if(a[0]!='-'&&b[0]=='-')jia(a,&b[1]);elsecompare(a,b);return 0;}13.大写变小写#include<stdio.h>#include<string.h>int main(){char s[80];int len,i;gets(s);len=strlen(s);for(i=0;i<len;i++){if(s[i]>='a'&&s[i]<='z')s[i]=s[i]-32; }puts(s);return 0;}14.到底星期几15.等比数列#include <stdio.h>#include <stdlib.h> int main(){int m,n,sum;scanf ("%d",&m);for (n=1; ;n++) {sum=(3*n-1)*n/2;if (sum>m)break;}printf ("%d",n);return 0;}16.找到正整数符合要求#include<stdio.h>int main(){int k,x=1,y=1;float a,b;scanf("%d",&k);for(;y<=5000;y++){for(x=y;x<=5000;x++){a=1.0/k;b=1.0/x+1.0/y;if(a==b)printf("1/%d=1/%d+1/%d\n",k,x,y);}}return 0;}17、韩信点兵#include<stdio.h>int main(){int n,i;for (i=0;;i++) {if (i%5==2&&i%6==3&&i%7==4&&i%11==5) {printf("%d",i);break;} }return 0;}18.回文字符串#include<stdio.h>#include<string.h>#include<ctype.h>#define MAXN 5000+10char buf[MAXN],s[MAXN];int p[MAXN];int main(){int n,m=0,max=0,x,y;int i,j;fgets(buf,sizeof(s),stdin);n=strlen(buf);for(i=0;i<n;i++){if(isalpha(buf[i])){p[m]=i;s[m++]=toupper(buf[i]);}}for(i=0;i<m;i++){for(j=0;i-j>=0&&i+j<m;j++){if(s[i-j]!=s[i+j])break;if(j*2+1>max){max=j*2+1;x=p[i-j];y=p[i+j];} }for(j=0;i-j>=0&&i+j+1<m;j++){if(s[i-j]!=s[i+j+1])break;if(j*2+2>max){max=j*2+2;x=p[i-j];y=p[i+j+1];} }}for(i=x;i<=y;i++)printf("%c",buf[i]);printf("\n");return 0;}#include<iostream>using namespace std;int main(){char A[5000],B[5000];int a=0,b,c,d,e,f,n=0,m,p,q,C[5000];while((A[a]=cin.get())!='\n') a++;for(b=0,c=0;b<=a-1;b++){if((A[b]>=65&&A[b]<=90)||(A[b]>=97&&A[b]<=122)){B[c]=A[b],C[c]=b;if(B[c]>=97&&B[c]<=122) B[c]=B[c]-32;c++;}}B[c]=32;for(d=0;d<=c-2;d++){if(B[d]==B[d+1]) e=d,f=d+1,a=1;else if(B[d]==B[d+2]) e=d,f=d+2,a=1;else continue;while(e-1>=0&&f+1<=c&&B[e-1]==B[f+1]) e--,f++;m=f-e;if(m>n) n=m,p=e,q=f;}for(a=C[p];a<=C[q];a++)cout<<A[a];cout<<endl;}鸡的体重计算数据整数部分加密#include<stdio.h>#include<string.h>int main(){FILE*pi;pi=fopen("in.dat","w");char A[1000],B[1000];int i,n;gets(A);n=strlen(A);for(i=0;i<n;i++){fprintf(pi,"%c",A[i]);if('A'<=A[i]<'Z'||'a'<=A[i]<'z')B[i]=A[i]+1;if(A[i]=='Z'||A[i]=='z')B[i]=A[i]-25;}for(i=0;i<n;i++)printf("%c",B[i]);fclose(pi);return 0;}阶乘#include<stdio.h>int main(){int n;int i=2;int j=1;scanf("%d",&n);while(1){j=j*i;if(j>n) break;i++;}printf("%d\n",i-1);return 0;卡片恐怖水母#include<stdio.h>void paixu(int A[],int m) {int i=1,n=0,j=0; for(;j<m;j++){for(i=j+1;i<m;i++) {if(A[i]<A[j])n=A[j];A[j]=A[i];A[i]=n;}}}}int main(){int n=0,m=0,A[100]={0},B[100]={0},i=0,j=0,k=0;scanf("%d%d",&n,&m);for(i=0;i<n;i++){scanf("%d",&A[i]);}for(i=0;i<m;i++){scanf("%d",&B[i]);}if(m<n){printf("NULL\n");}else{paixu(A,n);paixu(B,m);for(i=0;i<m;i++){if(A[0]<=B[i]){if(m-i>=n){for(k=0;k<n;k++){j+=B[i+k];}printf("%d\n",j);}else{printf("NULL\n");}break;}}return 0;}快速排序#include<stdio.h>void QuickSort(int A[],int n,int L,int R){int i,j,t;if(L<R){i=L;j=R+1;while(1){while(i+1<n&&A[++i]<A[L]);while(j-1>-1&&A[--j]>A[L]);if(i>=j)break;t=A[i];A[i]=A[j];A[j]=t;}t=A[L],A[L]=A[j],A[j]=t;QuickSort(A,n,L,j-1);QuickSort(A,n,j+1,R);}}int main(){int A[1000],n,i,j,p;scanf("%d",&n);if(n>=1000) {printf("Overflow") ;return 0; }//输入要排序的元素的数目,若大于1000则结束程序输出“Overflow”for(i=0;i<n;i++)scanf("%d",&A[i]); //输入元素QuickSort(A,n,0,n-1);for(i=n-1;i>=0;i--)printf("%d ",A[i]); //输出排序好的结果return 0;}两人三足#include<stdio.h>int main(){int n,a[50],i,j,t,sum=0;scanf("%d\n",&n);for (i=0;i<n;i++) scanf("%d",&a[i]);for (i=0;i<n;i++) {for (j=0;j<n-i-1;j++) {if (a[j]<a[j+1]) t=a[j],a[j]=a[j+1],a[j+1]=t;}}for (i=0;i<n;i+=2) sum+=a[i];printf("%d",sum);return 0;}逆序输出偶数和#include <stdio.h>#include <stdlib.h>int main(){int n,i,sum=0;scanf("%d",&n);int a[n];for(i=0;i<n;i++){scanf("%d",&a[i]);}for(i=0;i<n;i++){if(i%2==0)sum=sum+a[i];} printf("%d",sum);return 0;}三角形面积士兵移动输出位数#include<stdio.h> int main(){int i,n;scanf("%d",&n); for(i=1;;i++){if(n/10==0)break; else n=n/10;}printf("%d",i);}数列#include<stdio.h>int main(){int A[10],B[5],i;double C[5];for(i=0;i<5;i++)scanf("%d",&A[i]);for(i=0;i<4;i++){B[i]=A[i+1]-A[i];C[i]=(double)A[i+1]/A[i];}if(B[0]==B[1]&&B[1]==B[2]&&B[2]==B[3]){for(i=5;i<10;i++)A[i]=A[i-1]+B[0],printf("%d ",A[i]);return 0;}if(C[0]==C[1]&&C[1]==C[2]&&C[2]==C[3]){for(i=5;i<10;i++)A[i]=A[i-1]*C[0],printf("%d ",A[i]);return 0;}if((A[0]+A[1]==A[2])&&(A[1]+A[2]==A[3])&&(A[2]+A[3]==A[4])){ for(i=5;i<10;i++)A[i]=A[i-1]+A[i-2],printf("%d ",A[i]);return 0;}printf("NULL");return 0;}数字加密数组元素和水仙花数提取字符串#include <stdio.h>#include<string.h>int main(){char A[100];char l[100];gets(A);int m,n,i,j;scanf("%d",&m);n=strlen(A);for (i=m;i<n;i++){l[i]=A[i];}for (j=m;j<n;j++){printf("%c",l[j]);}printf("\n");return 0;}添加行号#include<stdio.h>#include<string.h>int main(){char A[3][100],B[3][100];int i;FILE*fp;fp=fopen("b.c","w");for(i=0;i<3;i++)gets(A[i]);fprintf(fp,"0001 ");fputs(A[0],fp);fprintf(fp,"\n""0002 ");fputs(A[1],fp);fprintf(fp,"\n""0003 ");fputs(A[2],fp);fprintf(fp,"\n");fclose(fp);printf("0001 ");puts(A[0]);printf("0002 ");puts(A[1]);printf("0003 ");puts(A[2]);return 0;}舞伴配对相乘后位数相加#include <stdio.h>int main(){int k;long a,b;scanf("%ld%ld",&a,&b); if(a==0||b==0)printf("0\n");else{k=(a%9)*(b%9)%9;if(k==0)printf("9\n");elseprintf("%d\n",k);}return 0;}#include <iostream>using namespace std;int main(){char A[13],B[13];int a=0,b=0,c,d,e,f,m=0,X[13],Y[13]; for(c=0;c<=12;c++)X[c]=0,Y[c]=0;while((A[a]=cin.get())!=32) a++; while((B[b]=cin.get())!='\n') b++; for(c=0,a--;a>=0;a--,c++)X[c]=A[a]-48;for(d=0,b--;b>=0;b--,d++)Y[d]=B[b]-48;for(e=0;e<=c-1;e++)for(f=0;f<=d-1;f++)m=m+X[e]*Y[f];while(m>10){a=m%10,m=(m-a)/10+a;}cout<<m<<endl;return 0;}销售记录#include<stdio.h>#include<string.h>typedef struct tagME{char a0[5];char a1[11];char a2[20];int a3;int a4;}tag;int main(){ tag a[100],b[100];int n,i,j=1,k=0;FILE *fp;scanf("%d",&n);for(i=0;i<=n-1;i++){scanf("%s %s %s %d %d",a[i].a0,a[i].a1,a[i].a2,&a[i].a3,&a[i].a4);} fp=fopen("out.dat","w");if(fp!=NULL){for(j=0;j<=n-1;j++){fscanf(fp,"%s%s%s%d%d",a[j].a0,a[j].a1,a[j].a2,&a[j].a3,&a[j].a4);}for(i=0;i<=n-2;i++){if(a[i].a4>=a[i+1].a4)b[0]=a[i],a[i]=a[i+1],a[i+1]=b[0];}printf("%s %s %s %d %d",a[i].a0,a[i].a1,a[i].a2,a[i].a3,a[i].a4);fclose(fp);}return 0;}星期几星座#include <stdio.h>int main(){int a,b;scanf("%d%d",&a,&b);switch (a){case 1:if(b<=19)printf("Capricorn");else printf("Aquarius");break;case 2:if(b<=18)printf("Aquarius");else printf("Pisces");break;case 3:if(b<=20)printf("Pisces");else printf("Aries");break;case 4:if(b<=20)printf("Aries");else printf("Taurus");break;case 5:if(b<=20)printf("Taurus");else printf("Gemini");break;case 6:if(b<=21)printf("Gemini");else printf("Cancer");break;case 7:if(b<=22)printf("Cancer");else printf("Leo");break;case 8:if(b<=22)printf("Leo");else printf("Virgo");break;case 9:if(b<=22)printf("Virgo");else printf("Libra");break;case 10:if(b<=22)printf("Libra");else printf("Scorpio");break;case 11:if(b<=21)printf("Scorpio");else printf("Sagittarius");break;case 12:if(b<=21)printf("Sagittarius");else printf("Capricorn");break;}return 0;}幸运数学号循环移位#include <stdio.h>int move(int value,int n){if(n<0){n=-n;value=(value<<n|value>>(32-n));}elsevalue=(value>>n|value<<(32-n));return(value);}int main(){int x,y;scanf("%d %d",&x,&y);printf("%d\n",move(x,y));return 0;}月份天数#include <stdio.h>int main(){int y,m,d;int A[13]={0,31,29,31,30,31,30,31,31,30,31,30,31};int B[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};scanf("%d%d",&y,&m);if((y%4==0&&y%100!=0)||(y%400==0))d=A[m];elsed=B[m];printf("%d",d);return 0; }月份转换英语运费职工信息字符串替换#include<stdio.h>#include<string.h>int main(){char A[100],B[100];int i;gets(A);for(i=0;i<100;i++){if(A[i]=='y'&&A[i+1]=='o'&&A[i+2]=='u') {A[i]='w';A[i+1]='e';A[i+2]=' ';}}for(i=0;A[i]!='\0';i++){if(A[i-2]=='w'&&A[i-1]=='e'&&A[i]==' ') continue;elseprintf("%c",A[i]);}printf("\n");return 0;}字符串长度字符输出#include<stdio.h>#include<string.h>int main(){char A[200],B[200];int p,n,i,j=0;gets(A);scanf("%d%d",&p,&n);for(i=p;i<=p+n-1;i++,j++){B[j]=A[i];}puts(B);}总分最高最大公约数最大值最小值#include<stdio.h>int main(){int n;int max;int min;int a[100];int i;scanf("%d",&n);for(i=0;i<n;i++)scanf("%d",&a[i]);max=a[0];min=a[0];for(i=0;i<n;i++){if(a[i]>max) max=a[i];if(a[i]<min) min=a[i];}printf("%d %d\n",max,min); return 0;}最小公倍数#include<stdio.h>#include<string.h>int main(){int N,M,t,i;scanf("%d%d",&M,&N);t=M*N;for(i=1;i<=t;i++){if(i%N==0)if(i%M==0){printf("%d",i);break;}}return 0;}左下角#include<stdio.h>int main(){int n,i=0,j=0,A[100][100];scanf("%d\n",&n);for(;i<=n-1;i++){for(j=0;j<=n-1;j++)scanf("%d",&A[i][j]);}int m,p;for(m=0;m<=n-1;m++){for(p=0;p<=n-1;p++){if(p>m)printf(" ");else printf("%d ",A[m][p]);if(p==n-1)printf("\n");} }return 0;}。

相关文档
最新文档