教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 文库大全 > 教育文库 >

广工C语言编程题目

来源:网络收集 时间:2026-09-13
导读: C语言编程题目 1.025 编写一个C程序,用函数printf(char *s)输出 以下3行信息: ******************** * Very Good! * ******************** 注意: (1)要求精确到每个字符、空格、字母及其大小写。 (2)可多次调用printf(char *s),每次仅一个字符串参数

C语言编程题目

1.025 编写一个C程序,用函数printf(char *s)输出

以下3行信息:

******************** * Very Good! * ******************** 注意:

(1)要求精确到每个字符、空格、字母及其大小写。

(2)可多次调用printf(char *s),每次仅一个字符串参数。 **********/ void print1() {

printf("********************\n"); }

void print2() {

printf("* Very Good! *\n"); }

void main() { print1(); print2();

print1(); }

1.055 编写一个程序,输入a、b、c三个值,输出其中最大值。

要求不改变下列给定的程序框架内容,填入合适语句,使其成

为满足题目要求的正确程序。 **********/

int max_a(int a,int b,int c) {int max=a; if(max<b) max=b; if(max<c) max=c; return max;}

int max_b(int a,int b,int c) {int max=b; if(max<a) max=a;

1

if(max<c)

max=c;

return max;}

int max_c(int a,int b,int c) {int max=c; if(max<a) max=a; if(max<b) max=b; return max;} void main() {int a,b,c,max;

scanf("%d,%d,%d",&a,&b,&c); //max=a>b?a:b; //max=max>c?max:c; //max=a;

//if(max<b) max=b; //if(max<c) max=c;

printf("max(%d,%d,%d)=%d\n",a,b,c,max_a(a,b,c));

printf("max(%d,%d,%d)=%d\n",a,b,c,max_b(a,b,c));

printf("max(%d,%d,%d)=%d\n",a,b,c,max_c(a,b,c)); }

6.022 n是系统给定的外部变量,编写程序求1到n间的

自然数之和。请定义局部变量s存放求和的结果,并用

下列语句输出结果

printf("1+2+...+n=%d\n",s); **********/

void main() {int s;

/* 请添加相关说明和语句 */ int i;

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

s+=i;

printf("1+2+...+n=%d\n",s); /* 注意:不要修改此输出语句 */

}

6.026 n和s是系统给定的外部整型变量(不需要自行定义),

编写程序求1到n之间的奇数之和,并将结

果存放到s。 **********/ void main() {int i;

for(i=1;i<=n;i++) if(i%2!=0) s+=i;

}

6.040 m,n和s是系统定义的外部整型变量(不需要自行定义),

编写程序,根据m的值求满足1+2+...+n>=m的最小n,并将

1+2+...+n的结果存放到s。例如,若m=50,则n=10,s=55。 **********/ void main() {int i;

for(i=1;s<m;i++) { s+=i; n=i; }

}

/**********

6.051 n和s是系统给定的外部整型变量(不需要自行定义), 编写程序求1-1/2+1/3-1/4+...1/n,并将结果存放到s。 **********/ void main() {

//int sign=1;

//float deno=2.0,term; //s=1.0;

//while(deno<=n) //{

//sign=-sign; //term=sign/deno; //s=s+term; //deno=deno+1; //}

//printf("%f\n",s); int i=1,flag=1; s=0.0;

while(i<=n)

2

{

s+=1.0/i++*flag; flag*=-1; }

printf("s=%f\n",s); }

int min(int x, int y, int z)

/* 返回3个整数x,y和z中最小的数 */ { int t;

t=x<y?x:y; return(t<z?t:z);

}

/* 8.020 编写函数,求用1元、5元和10元三种纸币支付n元钱

共有多少种支付方法?

例如,16元可有6种支付方法: 方法 1 2 3 4 5 6 10元 0 0 0 0 1 1 5元 0 1 2 3 0 1 1元 16 11 6 1 6 1 */

int change(int n) { int i,j,k;

int sum=0;

printf("\t1元\t5元\t10元\n"); for(i=0;i<=n;i++)

for(j=0;j<=n/5;j++)

for(k=0;k<=n/10;k++) if(n==(i+5*j+10*k)) { sum=sum+1;

printf("%-d",sum); printf("\t%-d\t%-d\t%-d\n",i,j,k); } printf("\n"); return(sum);

}

/* 8.030 先编写一个判断素数的函数。再编写一个函数将一个

偶数表示为两个素数之和,并返回其中较小的素数。

注:素数指只能被1和自身整除的正整数。规定0,1不是素数。 */

int prime(int n)

/* 判断素数,如果是素数返回1,不是素数则返回0 */ { int t; if(n==1) return 0;

for(t=2;t<=(n/2);t++) if(n%t==0) return 0; return 1;

}

int f(int i)

/* 将偶数i表示为两个素数之和,返回其中较小的素数*/

{ int n;

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

if(prime(i-n) && prime(n)) return n; }

/* 8.050 编写函数,将字符串中ASCII码最小的字符放在第一

个字符位置,其余字符依次往后移。 */

void func(char *str)

/* 将字符串str中ASCII码最小的字符放在

7 8 9 7 4 1 */

void invert(char a[N][N]) { int i, j,b[20][20]; for(i=0;i<N;i++) for(j=0;j<N;j++) b[i][j]=a[N-1-j][N-1-i]; for(i=0;i<N;i++) for(j=0;j<N;j++) a[i][j]=b[i][j];

return; }

/* 8.064 编写函数将一个NxN的二维数组“水平”翻转。

例如:翻转前的数组 翻转后的数组 1 2 3 7 8 9 4 5 6 ---> 4 5 6 7 8 9 1 2 3 */

void invertH(char a[N][N]) { int i,j;

char k;

for (i=0;i*2<N;i++) for (j=0;j<N;j++) {

第一个 */ k=a[i][j];

/* 字符位置,其余字符依次往后移。 a[i][j]=a[N-i-1][j]; */

{ int i,j,min;

for(min=0,i=1;str[i]!='\0';i++) {

if(str[min]>str[i]) min=i; }

j=str[min];

for(i=min-1;i>=0;i--) str[i+1]=str[i];

str[0]=j; }

/* 8.060 编写函数将一个nxn的二维数组按“次对角线”翻转。

例如:翻转前的数组 翻转后的数组 1 2 3 9 6 3 4 5 6 ---> 8 5 2

3

a[N-i-1][j]=k; } }

/* 8.067 编写函数将一个NxN的二维数组的周边元素“顺时针”轮转1位。 例如:轮转前的数组 轮转后的数组 1 2 3 4 1 2 4 5 6 ---> 7 5 3 7 8 9 8 9 6 */

void turningClockwise(char a[N][N]) { int i,j,row=0,column=0; int tmp,t;

int flag=1;

printf("原来的数组:\n"); for(i=0;i<N;i++){ for(j=0;j<N;j++)

printf("%5d",a[i][j]); printf("\n"); }

tmp = a[0][0]; a[0][0] = a[1][0]; column = 1;

while(!(row==0&&column==0)){ t = a[row][column]; a[row …… 此处隐藏:3422字,全部文档内容请下载后查看。喜欢就下载吧 ……

广工C语言编程题目.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wenku/110887.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)