博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
C程序设计Week12晚上练习
阅读量:6669 次
发布时间:2019-06-25

本文共 3445 字,大约阅读时间需要 11 分钟。

本周仅仅进行一个程序,曾经的一个程序。

自己定义例如以下函数,输入n(n<46)个学生的姓名和成绩,顺序输出这n个学生的姓名和成绩,并输出最高成绩的姓名和成绩。预习struct结构体,思考怎样改进这一程序。

//为count个学生输入姓名和成绩 void getStudentsInfo(char names[][20], int scores[] , int count); void getStudentsInfo(char* names[], int scores[] , int count); //依次打印count个学生的姓名和成绩 void printStudentsInfo(char* names[], int scores[],int count); //获取最高成绩的学生的index int getIndexOfMaxScore(int scores[],int count);

知识点:

1 字符串数组用于处理多个人的姓名
2 数组作为函数的參数

the core code:

/* Note:Your choice is C IDE */#include "stdio.h"void inputStudents(char name[][20],int score[],int num);void outputStudents(char name[][20],int score[],int num);main(){    char name[45][20];    int  score[45];        inputStudents(name,score,2);    outputStudents(name,score,2);    }void inputStudents(char name[][20],int score[],int num){	 int i ;	 for(i=0;i

an example :

/* Note:Your choice is C IDE */#include "stdio.h"#define N 45int inputSS(char names[][20],int score[],int num);void printSS(char names[][20],int score[],int num);void getMAX(char names[][20],int score[],int num);main(){  char names[N][20];  int score[N];  int num=0;   int choose;  printf("What do you want to do: INPUT(1),OUTPUT(2),MAX(3),EXIT(0):");  scanf("%d",&choose);  do{  	 switch(choose){  	   case 1:    	     num = inputSS(names,score,num);  	     break;  	   case 2:  	     printSS(names,score,num);  	     break;  	   case 3:  	     getMAX(names,score,num);  	 }  	 printf("\nWhat do you want to do: INPUT(1),OUTPUT(2),MAX(3),EXIT(0):");  	 scanf("%d",&choose);  	}while(choose != 0);    }int inputSS(char names[][20],int score[],int num){	int n,i;	printf("\nThis Time, How many students do you want to input :");	scanf("%d",&n);		if((n+num)>N || n <1){	  printf("not valid sum\n");	  return -1;	}	printf("NOW INPUT AS ( NAME SCORE ):\n");	for(i=0;i
max_score ){ max_score = score[i]; max_index = i; } printf("The Top Score is %d by %s \n",score[max_index],names[max_index]); }

=====================华丽的切割线====================================================

有非常多知识点须要大家复习。以下是一些比較cute的程序。弄懂啊弄懂

//0#include "stdio.h"void main(){  int i=0, a[]={3,4,5,4,3};  do  {      a[i]++;   }while(a[++i]<5);   for(i=0;i<5;i++)     printf("%d",a[i]) ;}//1#include "stdio.h"void main(){   int a = 7;   int b = 8;   printf ( "a&b = %d\n",a&b);   printf( "a&&b = %d\n",a&&b);}//2 #include "stdio.h"void main(){   int i ;   for(int i = 0; i<4; i++){      if( i==2)         break;      printf("%d ",i);   }  printf("\n"); for(int i = 0; i<4; i++){      if( i==2)         continue;      printf("%d ",i);   }   printf("\n");}//3 #include "stdio.h"void main(){  int sum=0,item=0;  while(item<7){    item++;    sum+=item;    if(sum==7)      break;  }  printf("%d\n",sum);}//4 #include "stdio.h"void main(){  int a[]={1,2,3,4,5,6,7,8};  int i,x ,*p;  x=1;  p=&a[3];  for( i=0; i<3; i++ )     x *= *(p+i);  printf("x=%d\n",x);}//5 #include "stdio.h"void main(){  int i=5,x=1;  for(;i<5;i++) x=x+1;  printf("%d\n",x);}//6 #include "stdio.h"void main(){    int x,y;    for (x=0, y=0 ; (y!=123) &&(x<4); x++)        y++;    printf("x=%d,y=%d\n",x,y);}//7 #include "stdio.h"void main(){ int a[7]={3,4,5,6,7,8,9}; int *p,*q; int i,x; p=&a[0]; q=&a[6]; for (i=0;i<3;i++)   if(*(p+i)==*(q-i) )      x=*(p+i)*2;}//8#include "stdio.h"void main(){  int a[5][5];  printf("&a[3][2]-a=%d\n",&a[3][2]-a);}//9#include "stdio.h"void main(){  int i=2,n=2;  for(;i<5;i++){     continue;     n=n+i;   }  printf("%d\n",n);}

转载地址:http://tklxo.baihongyu.com/

你可能感兴趣的文章
TOP命令详解
查看>>
项目Alpha冲刺——总结
查看>>
zoj 2339 Hyperhuffman 哈夫曼编码 (c)
查看>>
EL表达式
查看>>
函数类型
查看>>
Break和Continue的用法
查看>>
CMD命令
查看>>
Angular练习题
查看>>
backbone 学习之history
查看>>
【转】Unity3D运行时刻资源管理
查看>>
【Java】数组升序和降序
查看>>
Implement Trie (Prefix Tree)
查看>>
【佛法】由佛法观爱情与人生——一位居士对爱情、婚姻和家庭的体悟
查看>>
加速数组操作(Array)
查看>>
收集计算机分区信息,去除列中的重复值(Excel)(空行)
查看>>
Python抓取zabbix性能监控图
查看>>
JDBC进行数据库的--增--删--改--案例----纯代码
查看>>
纪录一个table元素里面的tr th td
查看>>
CF1076C Meme Problem 数学
查看>>
iml文件
查看>>