C语言程序设计经典例题

时间:2026-01-10

数组中找最大最小数及其位置 #include <stdio.h> #define N 10 void main() { int i,max,min, a[N]; printf("请输入10个整数:"); for(i=0;i<N;i++) scanf("%d",&a[i]); max=0; min=0; for(i=1;i<N;i++) { if(a[i]>a[max]) max=i; }

for(i=1;i<N;i++) { if(a[i]<a[min]) min=i; } printf("最小数=%d,在数组中的下标是:%d\n",a[min],min); printf("最大数=%d,在数组中的下标是:%d\n",a[max],max); }

冒泡法排序

#include <stdio.h> #define N 10 void main() {

int i,j,t,a[N]; printf("请输入10个整数:"); for(i=0;i<10;i++) scanf("%d",&a[i]); for(i=0;i<N-1;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<10;i++) printf("%d ",a[i]); printf("\n"); }

选择法排序

#include <stdio.h> #define N 10 void main() {

int i,j,t,a[N]; printf("请输入10个整数:"); for(i=0;i<10;i++) scanf("%d",&a[i]); for(i=0; i<N-1; i++) for(j=i+1; j<N; j++) if(a[i] > a[j]) { t=a[i]; a[i]=a[j]; a[j]=t; } for(i= 0;i<10;i++) printf("%d ",a[i]); printf("\n"); }

插入法排序

#include <stdio.h> #define N 10 void main(void) {

int i,j,t,k,a[N]; printf("请输入10个整数:"); for(i=0;i<10;i++) scanf("%d",&a[i]); for(i=1;i<=N-1;i++) { t=a[i]; if(a[i]<a[0]) k=0; else for(j=0;j<=i-1;j++) if(a[i]>a[j])

k=j+1; for(j=i-1;j>=k;j--) a[j+1]=a[j]; a[k]=t; } for(i= 0;i<10;i++) printf("%d ",a[i]); printf("\n"); }

统计数据中不同数字个数 #include <stdio.h> void main(void) { int a[10]={0}; int i; char c; printf("请输入一个数据,以回车结束:\n"); while((c=getchar())!='\n') { if(c>='0' && c<='9') a[c-'0']++; } for(i=0;i<10;i++) if(a[i]!=0) printf("%c:%d个\n",'0'+i,a[i]); }

统计单词中个字母的次数 #include <stdio.h> void main(void) { int a[26]={0}; int i; char c; printf("请输入一串英文,以回车结束:\n"); while((c=getchar())!='\n') { if(c>='a' && c<='z') a[c-'a']++; else if(c>='A' && c<='Z') a[c-'A']++; }

for(i=0;i<26;i++) if(a[i]!=0) printf("%c:%d个\n",'A'+i,a[i]); }

找100以内的素数,并以10个一行输出 #include <stdio.h> #include <math.h> void main(void) {

int i,j,c; int a[100];

for(i=0;i<100;i++) a[i]=i+1;

a[0]=0;

for(i=0;i<sqrt(100);i++) if(a[i]!=0)

for(j=i+1;j<100;j++)

if(a[j]%a[i]==0) a[j]=0;

c=0;

for(i=0;i<100;i++) if(a[i]!=0) { printf("%5d",a[i]); c++; if(c%10==0) printf("\n"); } }

矩阵转置

#include <stdio.h> #define M 3 void main() {

int i,j,t,a[M][M]; for(i=0;i<M;i++) for(j=0;j<M;j++) scanf("%d",&a[i][j]); for(i=0;i<M;i++)

{ t=a[i][j]; a[i][j]=a[j][i]; a[j][i]=t; } for(i=0;i<M;i++) { for(j=0;j<M;j++) printf("%4d",a[i][j]); printf("\n"); } }

5行5列矩阵 #include<stdio.h> #define N 5 void main() { int i,j,a[N][N]; int s1=0,s2=0,s3=0,s4=0,min,max,row=0,col=0; printf("输入5行5列矩阵:\n"); for(i=0;i<5;i++) for(j=0;j<5;j++) scanf("%d",&a[N][N]); for(i=0;i<5;i++) for(j=0;j<5;j++) s1+=a[i][j]; printf("所有元素的和为%d\n",s1); for(i=0;i<5;i++) s2+=a[i][i]+a[4][0]+a[3][1]+a[1][3]+a[0][4]; printf("主副对角线之和为%d\n",s2); for(i=0;i<5;i++) s3+=(a[i][0]+a[i][4]); for(j=0;j<5;j++) s3+=(a[0][j]+a[4][j]); s3=s3-a[0][0]-a[0][4]-a[4][0]-a[4][4]; printf("所有靠边元素和为%d\n",s3); s4=s1-s3;

printf("所有内部元素的和为%d\n",s4); max=a[0][0]; min=a[0][0]; for(i=0;i<5;i++)

{ if(a[i][j]>max) { max=a[i][j]; row=i; col=j; } } printf("最大值为%d,行号为%d,列号为%d\n",max,row,col); for(i=0;i<5;i++) for(j=0;j<5;j++) { if(a[i][j]<min) { min=a[i][j]; row=i; col=j; } } printf("最小值为%d,行号为%d,列号为%d\n",min,row,col); }

最大行最小行交换 #include <stdio.h> int main(void) { int arr[5][5],sum[5]; int i,j; int t,max=0,min=0,p,q; printf("请输入5*5的矩阵数据:\n"); for(i=0;i<5;i++) { sum[i]=0; for (j=0;j<5;j++) { scanf("%d",&arr[i][j]); sum[i]+=arr[i][j]; } } max=sum[0]; p=0; min=sum[0];

q=0; for (i=1;i<5;i++) { if (max<sum[i]) { t=max;max=sum[i];p=i; } if (min>sum[i]) { t=min;min=sum[i];q=i; } } if (p!=q) { for (i=0;i<5;i++) { t=arr[p][i];arr[p][i]=arr[q][i];arr[q][i]=t; } } printf("交换后为:\n"); for (i=0;i<5;i++) { for (j=0;j<5;j++) { printf("%d ",arr[i][j]); } printf("\n"); } return 0; }

字符串复制

#include <stdio.h> #include<string.h> void main() { char st1[30]="My name is",str2[]="John."; puts(str1); puts(str2); strcpy(str1,str2); puts(str1); puts(str2); }

字符串 判断是否回文 #include<stdio.h> void main() { char string[80]; int i,j,n; gets(string); n=strlen(string); j=n-1; for(i=0;i<j;i++,j--) if(string[i]!=string[j])break; if(i==j) printf("Yes\n"); else printf("No\n"); …… 此处隐藏:3566字,全部文档内容请下载后查看。喜欢就下载吧 ……

C语言程序设计经典例题.doc 将本文的Word文档下载到电脑

    精彩图片

    热门精选

    大家正在看

    × 游客快捷下载通道(下载后可以自由复制和排版)

    限时特价:4.9 元/份 原价:20元

    支付方式:

    开通VIP包月会员 特价:19元/月

    注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
    微信:fanwen365 QQ:370150219