C
来源:互联网 发布:mac怎么升级到10.12 编辑:程序博客网 时间:2024/05/16 08:07
1、输入一组字符,分别统计出其中英文字母,数字,空格及其他字符的个数
#include<stdio.h>main(){char c;/*定义C为字符型*/int letters = 0, space = 0, digit = 0,others = 0;printf("please input some characters\n");while((c = getchar())!= '\n'){if(c>='a' && c<='z' || c>='A' && c<='Z')letters++;else if(c ==' ')space++;else if(c>='0' && c<='9')digit++;elseothers++;}printf("char=%d space=%d digit=%d others=%d\n",letters,space,digit,others);}
2、
#include<stdio.h>int main(){ int i,j; int a[10]; int t,p; printf("为数组元素赋值: \n"); for(i=0;i<10;i++) { printf("a[%d]=",i); scanf("%d",&a[i]); } /*从小到大排序*/ for(i=0;i<9;i++) /*设置外循环为0~8的元素*/ { t=a[i]; /*设置当前元素为最小值*/ p=i; /*记录元素位置*/ for(j=i+1;j<10;j++) /*内层循环到i+1到9*/ { if(a[j]<t) /*如果当前元素比最小值还小*/ { t=a[j]; /*重新设置最小值*/ p=j; /*记录元素位置*/ } } a[p]=a[i]; a[i]=t; } for(i=0;i<10;i++) { printf("%d\t",a[i]); if(i==4) printf("\n"); } printf("\n"); return 0;}
3.
5个学生5门课成绩,输出平均成绩最高的学生的成绩,以及该学生的学号
#include <stdio.h>voidmain(){ inti,j,max_i; floatsum,max=0; floats[6][5]={{78,82,93,74,65},{91,82,72,76,67},{100,90,85,72,98},{67,89,90,65,78},{77,88,99,45,89}}; for(i=0;i<5;i++) { sum=0; for(j=0;j<5;j++) {sum=sum+s[i][j];} s[i][5]=sum/5; } for(i=0;i<5;i++) { if(s[i][5]>max) { max=s[i][5]; max_i=i; } } printf("stu_order=%d\nmax=%7.2f\n",max_i,max);}//5个学生5门课成绩,输出平均成绩最高的学生的成绩,以及该学生的学号
4.
3个字符串找出其中最大者
//#include <stdio.h>#include <string.h>void main(){ char string[20]; char str[3][20]; int i; for (i=0;i<3;i++) { gets(str[i]); //例如 输入 zzdd as s \n sdfr \n ettg输出zzdsd asds s } if (strcmp(str[0],str[1])>0) { strcpy(string,str[0]); } else { strcpy(string,str[1]); } if (strcmp(str[2],string)>0) { strcpy(string,str[2]); } printf("nThe largest string is:n%sn",string);}
5
【数组】将一个二维数组a的行列互换(行列式转置)存到另一个二维数组b中
#include <stdio.h>main(){ int a[2][3]={{1,2,3},{4,5,6}}; int b[3][2],i,j; printf("array a:n"); for (i=0;i<2;i++) { for(j=0;j<3;j++) { printf("%5d",a[i][j]); b[j][i]=a[i][j]; } printf("n"); } printf("array b:n"); for (i=0;i<3;i++) { for(j=0;j<2;j++) { printf("%5d",b[i][j]); } printf("n"); } printf("***********************************n"); printf("* Very Good!!! *n"); printf("* Come On! *n"); printf("* Yes You Can!!! *n"); printf("* Wonderful!!! *n"); printf("***********************************n");}
6.
【数组】二维数组a的行列互换,存到另一个二维数组b中
#include <stdio.h>void main(){ int a[2][3]={{1,2,3},{4,5,6}}; int b[3][2],i,j; printf("array a :n"); for (i=0;i<2;i++) { for (j=0;j<3;j++) { printf("%5d",a[i][j]); b[j][i] = a[i][j]; } printf("n"); } printf("array b:n"); for (i=0;i<3;i++) { for (j=0;j<2;j++) { printf("%5d",b[i][j]); } printf("n"); }} //2013.05.09机房
7.
【指针】通过指针变量访问整型变量
#include <stdio.h> int main(int argc, char *argv[]){ int a,b; int *pointer_1,*pointer_2; a=100;b=10; pointer_1=&a; pointer_2=&b; printf("a=%d,b=%dn",a,b); printf("*pointer_1=%d,*pointer_2=%d",*pointer_1,*pointer_2); return 0;}
8.
【指针】输入ab两个数,按大小顺序输出
#include <stdio.h> void main(){ int *p1,*p2,*p,a,b; scanf("%d%d",&a,&b);//scanf("%d,%d",&a,&b);加个逗号有错 printf("a=%d,b=%dn",a,b); p1=&a; p2=&b; printf("a=%d,b=%dn",a,b); if(a<b) { p=p1; p1=p2; p2=p; } printf("a=%d,b=%dn",a,b); printf("max=%d,min=%dn",*p1,*p2); }