2012年4月17日 星期二

TQC+ C語言認證範例 701


#include<stdio.h>
#include<stdlib.h>
int main(){
    char string[20];
    double output;
    printf("Enter digits string: ");
    scanf("%s",string);
   
    output=atof(string);
    printf("%s轉換後%f\n",string,output);
    system("pause");
    return 0;
}

TQC+ C語言認證範例 910


#include<stdio.h>
#include<stdlib.h>
typedef struct student{
            char name[15];
            int score;
            struct student* next;
            }ST;
int main(){
   
    ST *a,*b,*c;
    a=(ST*)malloc(sizeof(ST));
   
   
    printf("請輸入第一位學生姓名: ");scanf("%s",a->name);
    printf("分數: ");scanf("%d",&a->score);
    a->next=NULL;
    b=(ST*)malloc(sizeof(ST));
    printf("請輸入第二位學生姓名: ");scanf("%s",b->name);
    printf("分數: ");scanf("%d",&b->score);
    b->next=NULL;
    a->next=b;
    c=(ST*)malloc(sizeof(ST));
    printf("請輸入第三位學生姓名: ");scanf("%s",c->name);
    printf("分數: ");scanf("%d",&c->score);
    c->next=NULL;
    b->next=c;
    printf("\n輸出...\n");
   ST *p=a;
   while(p!=NULL){
                  printf("學生: %s\n",p->name);
                  printf("分數: %d\n\n",p->score);
                  p=p->next;
                  }
     system("pause");
     return 0;
     }

TQC+ C語言認證範例 909


#include<stdio.h>
#include<stdlib.h>
#include<string.h>
int main(){
    char A[10],B[100],C[100],n;
   
    printf("請輸入字串A:");gets(A);
    printf("字串A的長度:%d\n",strlen(A));
    strcpy(B,A);
     printf("字串B:%s\n",B);
   
     printf("請輸入字串C:");gets(C);
     n=strcmp(C,A);
     if(n>0) printf("字串A大於字串C\n");
                       else if(n==0) printf("字串A等於字串C\n");
                            else printf("字串A小於字串C\n");
                           
    system("pause");
    return 0;
}

TQC+ C語言認證範例 908


#include<stdio.h>
#include<stdlib.h>
#include<time.h>
int srnad(void){
    int data;
    data=rand()%1000+1;
    return data;
}

int main(){
    int i,j;
    srand(time(0));
    for(i=1;i<=10;i++){
                       for(j=1;j<=10;j++){
                                          printf("%5d",srnad());
                                          }
                                          printf("\n");
                                          }
    system("pause");
    return 0;
}

TQC+ C語言認證範例 907


#include<stdio.h>
#include<stdlib.h>
char GPA(int score){
     if(score>=90) return 'A';
                   else if(score>=80) return 'B';
                        else if(score>=70) return 'C';
                             else return 'D';
                             }
int main(){
    struct student{
        char name[15];
        int score;
        };
    struct student student1,student2,student3;
    printf("請輸入第一位學生姓名: ");
    scanf("%s",student1.name);
    printf("請輸入第一位學生成績: ");
    scanf("%d",&student1.score);  
    printf("請輸入第二位學生姓名: ");
    scanf("%s",student2.name);
    printf("請輸入第二位學生姓名: ");
    scanf("%d",&student2.score);
    printf("請輸入第三位學生姓名: ");
    scanf("%s",student3.name);
    printf("請輸入第三位學生姓名: ");
    scanf("%d",&student3.score);
   
    printf("第一位學生:%s\n",student1.name);
    printf("分數: %d\n",student1.score);
    printf("GPA: %c\n",GPA(student1.score));
    printf("第二位學生:%s\n",student2.name);
    printf("分數: %d\n",student2.score);
    printf("GPA: %c\n",GPA(student2.score));
    printf("第三位學生:%s\n",student3.name);
    printf("分數: %d\n",student3.score);
    printf("GPA: %c\n",GPA(student3.score));
   
   
   
    system("Pause");
    return 0;
}

TQC+ C語言認證範例 906


#include<stdio.h>
#include<stdlib.h>

int main(){
    struct student{
        char name[15];
        int score;
       
        }arr[5];
   
    int i;
    for(i=0;i<2;i++){
                     printf("請輸入第%d位姓名:",i+1);
                     scanf("%s",arr[i].name);
                     printf("請輸入第%d位C語言的分數:",i+1);
                     scanf("%d",&arr[i].score);
                     }
    printf("\n");
    for(i=0;i<2;i++){
                     printf("%-15s %3d\n",arr[i].name,arr[i].score);
                     }
                                             
 
    system("pause");
    return 0;
}

TQC+ C語言認證範例 905-2


#include<stdio.h>
#include<stdlib.h>
int main(){
    double data;
    FILE *fptr;
    fptr=fopen("dnumber.dat","r");
   
    while(fscanf(fptr,"%lf",&data)!=EOF){
                     printf("%.2f\n",data);
                   
                     }
    system("pause");
    return 0;
}

TQC+ C語言認證範例 905-1


#include<stdio.h>
#include<stdlib.h>
int main(){
    FILE *fptr;
    double data;
    fptr=fopen("dnumber.dat","w");
    printf("請輸入浮點數: ");scanf("%lf",&data);
    while(data!=-99.99){
                        fprintf(fptr,"%f ",data);
                        printf("請輸入浮點數: ");scanf("%lf",&data);
                        }
    fclose(fptr);
   
   
    return 0;
}
                       

TQC+ C語言認證範例 904-2


#include<stdio.h>
#include<stdlib.h>
int main(){
    char name[20];int score;
    FILE *fptr;
    fptr=fopen("score.dat","r");
    while(fscanf(fptr,"%s %d",name,&score)!=EOF){
                          printf("%s的c語言分數是%d\n",name,score);
                          }
    system("pause");
 
    return 0;
}

TQC+ C語言認證範例 904-1


#include<stdio.h>
#include<stdlib.h>
int main(){
    char name[20];
    int score;
    FILE *fptr;
    fptr=fopen("score.dat","w");
    printf("請輸入學生姓名:");scanf("%s",name);
    printf("請輸入學生分數:");scanf("%d",&score);
    while(score>=0){
                    fprintf(fptr,"%s %d",name,score);
                    printf("請輸入學生姓名:");scanf("%s",name);
                    printf("請輸入學生分數:");scanf("%d",&score);
                    }
    fclose(fptr);
return 0;
}

TQC+ C語言認證範例 903


#include<stdio.h>
#include<stdlib.h>
int greater60(int *parr,int n){
int i,count=0;;
for(i=0;i<n;i++){
                 if(*(parr+i)>=60) count++;
                 }
                 return count;

}

int main(){
int arr[6],i,count;
for(i=0;i<6;i++){
                 printf("輸入第%d個分數:",i+1);
                 scanf("%d",&arr[i]);
                 }
             printf("\n您輸入的data如下:\n");
             for(i=0;i<6;i++){
                              printf("data[%d]:%d\n",i,arr[i]);
                              }
             count=greater60(arr,6);
             printf("\n大於60分的有:%d個\n",count);
system("pause");
return 0;
}

TQC+ C語言認證範例 902


#include<stdio.h>
#include<stdlib.h>
#include<time.h>
#define random() rand()%49+1
int main(){
    srand(time(0));
    int arr[6],i,count=1,num;
    arr[0]=random();
    while(count<6){
                    num=random();
                    for(i=0;i<count;i++){
                                         if(arr[i]==num) break;
                                       
                                         }
                    if(i==count) arr[
                    count++]=num;
                    }
    for(i=0;i<6;i++) printf(" %d",arr[i]);


system("pause");
return 0;
}

TQC+ C語言認證範例 901-2


#include<stdio.h>
#include<stdlib.h>
void exchang(double *m,double *n){
     double temp;
     temp=*m;
     *m=*n;
     *n=temp;
     }
int main(){
    double a,b;
    printf("Enter two integer:");
    scanf("%lf %lf",&a,&b);
   
    printf("a:%f b:%f\n",a,b);
   
    exchang(&a,&b);
    printf("a:%f b:%f\n",a,b);
   


system("pause");
return 0;
}

TQC+ C語言認證範例 901-1


#include<stdio.h>
#include<stdlib.h>
void exchang(int *m,int *n){
     int temp;
     temp=*m;
     *m=*n;
     *n=temp;
     }
int main(){
    int a,b;
    printf("Enter two integer:");
    scanf("%d %d",&a,&b);
 
    printf("a:%d b:%d\n",a,b);
 
    exchang(&a,&b);
    printf("a:%d b:%d\n",a,b);
 


system("pause");
return 0;
}

TQC+ C語言認證範例 810


#include<stdio.h>
#include<stdlib.h>
int main(){
    int m1[3][3],m2[3][3],i,j;
    printf("請輸入矩陣一...\n");
    for(i=0;i<3;i++){
                     for(j=0;j<3;j++){
                                      printf("m1[%d][%d]: ",i,j);
                                      scanf("%d",&m1[i][j]);
                                      }
                     }
    printf("請輸入矩陣一...\n");
    for(i=0;i<3;i++){
                     for(j=0;j<3;j++){
                                      printf("m2[%d][%d]: ",i,j);
                                      scanf("%d",&m2[i][j]);
                                      }
                     }
   
    printf("\n矩陣一\n");
    for(i=0;i<3;i++){
                     for(j=0;j<3;j++){
                                      printf("%3d",m1[i][j]);
                                      }
                                      printf("\n");
                                      }
    printf("\n矩陣一\n");
    for(i=0;i<3;i++){
                     for(j=0;j<3;j++){
                                      printf("%3d",m2[i][j]);
                                      }
                                      printf("\n");
                     }
    printf("\n矩陣三\n");
    for(i=0;i<3;i++){
                     for(j=0;j<3;j++){
                                      printf("%3d",m1[i][j]*m2[i][j]);
                                      }
                                      printf("\n");
                                      }                                
   
    system("pause");
    return 0;
}

TQC+ C語言認證範例 809


#include<stdio.h>
#include<stdlib.h>
void sorting(int data[],int n){
     int i,j,m,temp;
     for(i=0;i<n-1;i++){
                        m=i;
                        for(j=i+1;j<n;j++){
                                           if(data[j]<data[m]) m=j;
                                           }
                        if(data[i]!=data[m]){
                                       temp=data[i];
                                       data[i]=data[m];
                                       data[m]=temp;
                        }
   
     }
     }
int main(){
    int arr[15],i,j,count=0;
    for(i=0;i<15;i++){
                      printf("arr[%d]: ",i);
                      scanf("%d",&arr[i]);
                      }
    sorting(arr,15);
    printf("\nprint arr\n");
    for(i=0;i<5;i++){
                     for(j=0;j<3;j++){
                                      printf("arr2[%d][%d]=%d\n",i,j,arr[count]);
                                      count++;
                                      }
                     }

system("pause");
return 0;
}

TQC+ C語言認證範例 808


#include<stdio.h>
#include<stdlib.h>
void sorting(int data2[],int n){
     int i,j,f,temp;
     for(i=n-1;i>0;i--){
                        f=0;
                        for(j=0;j<i;j++){
                                         if(data2[j]>data2[j+1]){
                                                                 temp=data2[j];
                                                                 data2[j]=data2[j+1];
                                                                 data2[j+1]=temp;
                                                                 f=1;
                                                                 }
                                         }
                        if(f==0) break;
                        }
     }

int main(){
    int i,data[10];
    printf("enter:\n");
    for(i=0;i<10;i++){
                      printf("第%d個:",i+1);
                      scanf("%d",&data[i]);
                      }
    printf("排序前:");
    for(i=0;i<10;i++){
                      printf(" %d",data[i]);
                      }
    sorting(data,10);
    printf("\n排序後:");
    for(i=0;i<10;i++){
                      printf(" %d",data[i]);
                      }
printf("\n");

system("pause");
return 0;
}

TQC+ C語言認證範例 807


#include<stdio.h>
#include<stdlib.h>
void printStar(int n){
     int i;
     for(i=1;i<=n;i++) printf("*");
     printf("\n");
     }
void multiply(int n){
     int i,j;
     if(n<=10){
     for(i=1;i<=n;i++){
                       for(j=1;j<=n;j++){
                                         printf("%3d",i*j);
                                         }
                       printf("\n");
                       }
                       }
                       }
int main(){
    int i,j;
    printf("Enter乘法表數:");scanf("%d",&i);
    printf("Enter星星數:");scanf("%d",&j);
    printStar(j);
    multiply(i);
    printStar(j);


system("pause");
return 0;
}

TQC+ C語言認證範例 805-2


#include<stdio.h>
#include<stdlib.h>
int main(){
    int arr[5][2],i,j,sum=0;
    for(i=0;i<5;i++){
                     printf("請輸入兩個數字:");
                     scanf("%d %d",&arr[i][0],&arr[i][1]);
                     printf("\n");
                     }
    printf("\n");
    for(i=0;i<5;i++){
                     for(j=0;j<2;j++){
                                      printf("%d ",arr[i][j]);
                                      sum+=arr[i][j];
                                      }
                                      printf("\n");
                                      }
   
    printf("sum:%d\n",sum);
    system("pause");
    return 0;
}
                                     

TQC+ C語言認證範例 806


#include<stdio.h>
#include<stdlib.h>
void printStar(int n){
     int i;
     for(i=1;i<=n;i++) printf("*");
     printf("\n");
     }
void multiply(int n){
     int i,j;
     if(n<=10){
     for(i=1;i<=n;i++){
                       for(j=1;j<=n;j++){
                                         printf("%2d*%2d=%2d",i,j,i*j);
                                         }
                       printf("\n");
                       }
                       }
                       }
int main(){
    int i,j;
    printf("Enter乘法表數:");scanf("%d",&i);
    printf("Enter星星數:");scanf("%d",&j);
    printStar(j);
    multiply(i);
    printStar(j);


system("pause");
return 0;
}

TQC+ C語言認證範例 805-1


#include<stdio.h>
#include<stdlib.h>
int main(){
    int arr[3][4],i,j,sum=0;
    for(i=0;i<3;i++){
                     printf("請輸入四個數字:");
                     scanf("%d %d %d %d",&arr[i][0],&arr[i][1],&arr[i][2],&arr[i][3]);
                     printf("\n");
                     }
    printf("\n");
    for(i=0;i<3;i++){
                     for(j=0;j<4;j++){
                                      printf("%d ",arr[i][j]);
                                      sum+=arr[i][j];
                                      }
                                      printf("\n");
                                      }
   
    printf("sum:%d\n",sum);
    system("pause");
    return 0;
}
                                     

TQC+ C語言認證範例 804


#include<stdio.h>
#include<stdlib.h>
double average(double arr2[],int n){
       int i;double sum=0;
       for(i=0;i<n;i++){
                        sum+=arr2[i];
                        }
       return sum/n;
       }
int main(){
    double arr[6],result;
    int i;
    for(i=0;i<6;i++){
                     printf("enter 第%d個浮點數:",i+1);
                     scanf("%lf",&arr[i]);
                     }
   printf("\n你輸入的陣列值如下:\n");
   for(i=0;i<6;i++){
                    printf("data[%d]=%.2f\n",i,arr[i]);
                    }
   result=average(arr,6);
   printf("\n平均:%.2f\n",result);
   system("pause");
   return 0;
}
 

TQC+ C語言認證範例 803


#include<stdio.h>
#include<stdlib.h>
int main(){
    int a=0,b=0,c=0,i=1,vote;
    while(i<=10){
                 printf("<1>小蔡\n");
                  printf("<2>小王\n");
                  printf("<3>小史\n");
                  printf("請你投票:");
                  scanf("%d",&vote);
                  switch(vote){
                               case 1:a++;break;
                               case 2:b++;break;
                               case 3:c++;break;
                               default:break;
                               }
                  printf("\n小蔡得票數%d\n",a);
                  printf("小王得票數%d\n",b);
                   printf("小史得票數%d\n\n",c);
                   i++;
                   }
                   system("pause");
                   return 0;
                   }

TQC+ C語言認證範例 802


#include<stdio.h>
#include<stdlib.h>
int main(){
    int d=0;
    while(d!=5){
                printf("<1>教授\n");
                 printf("<2>副教授\n");
                 printf("<3>助理教授\n");
                 printf("<4>都不是\n");
                 printf("<5>結束\n");
                 printf("請輸入你的職稱代號: ");
                 scanf("%d",&d);
                 switch(d){
                           case 1:printf("\n您的職稱是教授\n");break;
                           case 2:printf("\n您的職稱是副教授\n");break;
                           case 3:printf("\n您的職稱是助理教授\n");break;
                           case 4:printf("\n您的職稱沒有在這些選項內\n");break;
                           case 5:break;
                           default:printf("您的職稱沒有在這些選項內\n");
                           }
                           printf("\n");
                           }
                system("pause");
                return 0;
                }
                               

TQC+ C語言認證範例 801-4


#include<stdio.h>
#include<stdlib.h>
int main(){
    int i,j;
    for(i=1;i<=5;i++){
                      for(j=1;j<=5;j++){
                                        if(j>=i) printf("*");
                                        else printf(" ");
                                        }
                      printf("\n");
                      }
    system("pause");
    return 0;
}
                                       

TQC+ C語言認證範例 801-3


#include<stdio.h>
#include<stdlib.h>
int main(){
    int i,j;
    for(i=1;i<=5;i++){
                      for(j=1;j<=5;j++){
                                        if(j<=5-i) printf(" ");
                                        else printf("*");
                                       
                                        }
                      printf("\n");
                      }
    system("pause");
    return 0;
}
                                       

TQC+ C語言認證範例 801-2


#include<stdio.h>
#include<stdlib.h>
int main(){
    int i,j;
    for(i=1;i<=5;i++){
                      for(j=5;j>=i;j--){
                                        printf("*");
                                        }
                      printf("\n");
                      }
    system("pause");
    return 0;
}
                                       

TQC+ C語言認證範例 801-1


#include<stdio.h>
#include<stdlib.h>
int main(){
    int i,j;
    for(i=1;i<=5;i++){
                      for(j=1;j<=i;j++){
                                        printf("*");
                                        }
                      printf("\n");
                      }
    system("pause");
    return 0;
}
                                       

TQC+ C語言認證範例 710


#include<stdio.h>
#include<stdlib.h>
#ifndef Knum
#define Knum 1000
#endif
#undef Knum
#define Knum 200

int main(){
    printf("Knum=%d\n",Knum);
   
    union dataType{
          double d;
          int i;};
   
    union dataType DT;
    printf("Enter D value: ");
    scanf("%lf",&DT.d);
    printf("%f\n",DT.d);
   
    printf("Enter i value: ");
    scanf("%d",&DT.i);
    printf("%d\n",DT.i);
    system("pause");
    return 0;
}

TQC+ C語言認證範例 709


#include<stdio.h>
#include<stdlib.h>
#include<math.h>
int main(){
    double result;
    double a,b,c,d,e,f;
    printf("Enter a,b,c value: ");
    scanf("%lf %lf %lf",&a,&b,&c);
    printf("Enter d,e,f value: ");
    scanf("%lf %lf %lf",&d,&e,&f);
    result=fabs(a)*floor(b)+pow(c,d)*sqrt(e)+log10(f);
    printf("result=%f",result);
    system("pause");
    return 0;
}

註:floor(藍字)由Tim Yang提供修改。

TQC+ C語言認證範例 708


#include<stdio.h>
#include<stdlib.h>
#include<time.h>
#define random(x) rand()%x

int main(){
    int i,j,x;
    printf("隨機數的最大值為: ");
    scanf("%d",&x);
    srand(time(0));
    for(i=1;i<=5;i++){
                     for(j=1;j<=4;j++){
                                       printf("%5d ",random(x)+1);
                                       }
                                       printf("\n");
                                     
                                       }
             system("pause");
             return 0;
             }

TQC+ C語言認證範例 707


struct student{
       char name[20];
       int score;
       };
typedef struct student ST;
#include<stdio.h>
#include<stdlib.h>
int main(){
    ST* stname;
    stname->name="John";
    stname->score=90;
    printf("%s的分數為%d\n",stname->name,stname->score);
    system("pause");
    return 0;
}

TQC+ C語言認證範例 706


#include<stdio.h>
#include<stdlib.h>
#include<math.h>
int main(){
    int x,y;
    double result;
    printf("Enter x,y: ");
    scanf("%d %d",&x,&y);
   
    result=exp(5)*sqrt(pow(x,y)+log(100))/pow(x,2)*pow(y,3);
    printf("result=%f\n",result);
    system("pause");
    return 0;
}

TQC+ C語言認證範例 705


#include<stdio.h>
#include<stdlib.h>
int main(){
    enum classify{
         Freshman,Sophomore,Junior,Senior
         };
    struct student{
           char *name;
           enum classify id;
           };
    struct student st1;
    st1.name="peter";
    st1.id=Freshman;
    printf("%s是大三的學生\n",st1.name);
    system("pause");
    return 0;
}

TQC+ C語言認證範例 704


#define TRIPLE(x) x*x*x

#include<stdio.h>
#include<stdlib.h>
int main(){
    int num,triple;
    printf("Enter one integer: ");
    scanf("%d",&num);
   
    triple=TRIPLE(num);
    printf("%d的三次方為%d\n",num,triple);
   
    triple=TRIPLE(5);
    printf("5的三次方為%d\n",triple);
    system("pause");
    return 0;
}

TQC+ C語言認證範例 703


#define NTRATE 31.34;

#include<stdio.h>
#include<stdlib.h>
int main(){
    double USdollar,NTdollar;
    printf("How many US do you have: ");
    scanf("%lf",&USdollar);
   
    NTdollar=USdollar*NTRATE;
    printf("You can exchang %.2fNTdollar\n",NTdollar);
    system("pause");
    return 0;
}

TQC+ C語言認證範例 702


#include<stdio.h>
#include<stdlib.h>
int main(){
    char string[20];
    int output;
    printf("Enter one string: ");
    scanf("%s",string);
   
    output=atoi(string);
    printf("%s after chang %d\n",string,output);
    system("pause");
    return 0;
}

TQC+ C語言認證範例 610


#include<stdio.h>
#include<stdlib.h>
#include<string.h>

int main(){
    FILE *fptr;
    char name[20];
    int score;
    fptr=fopen("score.dat","w");
    printf("Enter name: ");
    scanf("%s",name);
    printf("Enter score: ");
    scanf("%d",&score);
   
    while(score!=-100){
                       fprintf(fptr,"%s %d",name,score);
                       printf("Enter name: ");
                       scanf("%s",name);
                       printf("Enter score: ");
                       scanf("%d",&score);
                       }
   
    fclose(fptr);
    fptr=fopen("score.dat","r");
    printf("\n以下是你輸入的data:\n");
    while(fscanf(fptr,"%s %d",name,&score)!=EOF){
                     printf("%-10s %3d\n",name,score);
                     }
     system("pause");
     return 0;
     }

TQC+ C語言認證範例 609


#include<stdio.h>
#include<stdlib.h>
#include<string.h>

int main(){
    char str1[]="iPhone 4";
    char str2[40]="Apple iPod";
    char str3[40]="Apple ";
    char str4[40];
   
    strncat(str3, str1, 6);
    strncpy(str4,str2+6,5);
   
    printf("%s\n",str3);
    printf("%s\n",str4);
    system("pause");
    return 0;
}

TQC+ C語言認證範例 608


#include<stdio.h>
#include<stdlib.h>
#include<string.h>

int main(){
    char str[50]="Apple iPhone 4";
    char sttr[]={'i','P','a','d','\0'};
    char *pstr="Apple iPod";
    int i;
    printf("str字串如下:%s\n",str);
    printf("sttr字串如下:%s\n",sttr);
    /*while(sttr[i]!='\0'){
            printf("%c",sttr[i]);
            i++;
            }
            */
    printf("pstr字串如下:%s\n",pstr);
    system("pause");
    return 0;
}

TQC+ C語言認證範例 607


#include<stdio.h>
#include<stdlib.h>

int main(){
    char str[10];
    char *pstr;
    printf("Enter str string: ");scanf("%s",str);
   
    printf("Enter pstr string: ");
    pstr=(char *)malloc(sizeof(char)*10);
   
    scanf("%s",pstr);
    printf("\nYour str string is:%s\n",str);
    printf("Your pstr string is:%s\n",pstr);
    system("pause");
    return 0;
}

TQC+ C語言認證範例 606


#include<stdio.h>
#include<stdlib.h>
int main(){
    FILE *fptr;
    char ch;
    fptr=fopen("character.dat","w");
    printf("請輸入一字元: ");
    scanf("%c",&ch);
   
    while(getchar()!='\n'){continue;}
   
    while(ch!='*'){
                   fprintf(fptr,"%c",ch);
                   printf("請輸入一字元: ");
                   scanf("%c",&ch);
                 
                   while(getchar()!='\n'){continue;}
                   }
      fclose(fptr);
      fptr=fopen("character.dat","r");
      printf("\n以下是你輸入的data:\n");
      /*ch=fgetc(fptr);
      while(ch!=EOF){
                                  printf("%3c\n",ch);
                                  ch=fgetc(fptr);
                                  }
      */
     
      while(fscanf(fptr,"%c",&ch)!=EOF){
                     printf("%3c\n",ch);
                   
                     }
      fclose(fptr);
      system("pause");
      return 0;
      }

TQC+ C語言認證範例 605


#include<stdio.h>
#include<stdlib.h>
#include<ctype.h>
#include<conio.h>


 int main(){
     char ch,ch2;
     printf("請輸入一小寫的字母: ");scanf("%c",&ch);
   
     ch2=toupper(ch);
     printf("%c的大寫是%c",ch,ch2);
   
     while(getchar()!='\n'){continue;}
   
     printf("\n請輸入一大寫的字母: ");
     scanf("%c",&ch);
      ch2=tolower(ch);
      printf("%c的小寫是%c\n",ch,ch2);
      system("pause");
      return 0;
      }

TQC+ C語言認證範例 604


#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
#include<ctype.h>

int main(){
    char ch,ch2;
    printf("Enter one english char: ");
    ch=getche();
    ch2=toupper(ch);
    printf("\n%c的大寫是%c",ch,ch2);
   
    /*
    while(getchar()!='\n'){continue;}
    */
    printf("\nEnter one small english char: ");
    scanf("%c",&ch);
    ch2=tolower(ch);
    printf("%c的小寫是%c\n",ch,ch2);
    system("pause");
    return 0;
}

TQC+ C語言認證範例 602


#include<stdio.h>
#include<stdlib.h>
#include<string.h>
 int main(){
     char str2[]="Apple iPod";
     char str4[]="Apple iPad";
     int n;
   
     n=strcmp(str2,str4);
     if(n>0) printf("%s大於%s\n",str2,str4);
     else if(n==0) printf("%s等於%s\n",str2,str4);
     else printf("%s小於%s\n",str2,str4);
   
     n=strncmp(str2,str4,5);
     if(n>0) printf("%s前五個字元大於%s前五個字元\n",str2,str4);
     else if(n==0) printf("%s前五個字元等於%s前五個字元\n",str2,str4);
     else printf("%s前五個字元小於%s前五個字元\n",str2,str4);
   
     system("pause");
     return 0;
     }
     

TQC+ C語言認證範例 601


#include<stdio.h>
#include<stdlib.h>
#include<string.h>

int main(){
    char str[]="Apple iPhone 4";
    char pstr2[20]="Apple";
    char pstr1[]=" iPod";
    char str3[20];
   
    printf("str字串的長度是%d\n",strlen(str));
    printf("pstr2連結pstr1後的字串為:%s\n",strcat(pstr2,pstr1));
    printf("str3字串如下:%s\n",strcpy(str3,pstr1));
   
    system("pause");
    return 0;
}

TQC+ C語言認證範例 510


#include<stdio.h>
#include<stdlib.h>
int main(){
    struct circle{
           int x,y;
           int radius;
           struct circle *next;
           };
    struct circle *a,*b,*c,*current;
    a=(struct circle*)malloc(sizeof(struct circle));
    printf("請輸入第一個圓的圓心(x,y): ");
    scanf("%d %d",&a->x,&a->y);
    printf("請輸入第一個圓的半徑: ");
    scanf("%d",&a->radius);
    a->next=NULL;
   
    b=(struct circle*)malloc(sizeof(struct circle));
    printf("請輸入第二個圓的圓心(x,y): ");
    scanf("%d %d",&b->x,&b->y);
    printf("請輸入第二個圓的半徑: ");
    scanf("%d",&b->radius);
    b->next=NULL;
   
    a->next=b;
   
    c=(struct circle*)malloc(sizeof(struct circle));
    printf("請輸入第三個圓的圓心(x,y): ");
    scanf("%d %d",&c->x,&c->y);
    printf("請輸入第三個圓的半徑: ");
    scanf("%d",&c->radius);
    c->next=NULL;
   
    b->next=c;
   
    current=a;
    int i=1;
    while(current!=NULL){
                         printf("第%d個圓的圓心為(%d,%d),半徑為%d\n", i,current->x,current->y,current->radius);
                         current=current->next;
                         i++;
                         }
    free(a);
    free(b);
    free(c);
    system("pause");
    return 0;
}

TQC+ C語言認證範例 509


#include<stdio.h>
#include<stdlib.h>
int main(){
    struct triangle{
           int width;
           int height;
           };
    struct triangle *ptri;
    double area;
    ptri=(struct triangle*)malloc(sizeof(struct triangle));
   
    printf("請輸入三角形的底為多少: ");
    scanf("%d",&ptri->width);
    printf("請輸入三角形的高為多少: ");
    scanf("%d",&ptri->height);
   
    area=(double)(ptri->width*ptri->height)/2;
    printf("面積為%.2f\n",area);
    system("pause");
    return 0;
}
   

TQC+ C語言認證範例 508


#include<stdio.h>
#include<stdlib.h>
int main(){
    struct compay{
           char name[10];
           int hour;
           double pay;};
    struct company employee[5];
   
    double salary[5];
    int i;
    for(i=0;i<5;i++){
                     printf("Enter No.%d employee's name: ",i+1);
                     scanf("%s",employee[i].name);
                     printf("Enter No.%d employee's hour: ",i+1);
                     scanf("%d",&employee[i].hour);
                     printf("Enter No.%d employee's pay for one hour: ",i+1);
                     scanf("%lf",employee[i].pay);
                     }
     for(i=0;i<5;i++){
                      salary[i]=employee[i].hour*employee[i].pay;
                      printf("%-10s 的薪水為 %.2f\n",employee[i].name,employee[i].salary[i]);
                      }
        system("pause");
        return 0;
        }

TQC+ C語言認證範例 507


#include<stdio.h>
#include<stdlib.h>
int main(){
    struct company{
           char name[10];
           int hour;
           double pay;
           };
    struct company employee[5]={
           {"John",20,100.34},
           {"Mary",30,99.78},
           {"Peter",25,89.45},
           {"Nancy",33,87.42},
           {"Tom",54,77.89}
           };
    double salary[5];
    int i;
    for(i=0;i<5;i++){
                     salary[i]=employee[i].hour*employee[i].pay;
                     printf("%-10s 的薪水為 %.2f\n",employee[i].name,salary[i]);
                     }
    system("pause");
    return 0;
}

TQC+ C語言認證範例 506


struct circle{
       int x,y;
       double radius;
       };
double callarea(struct circle *pr);


#include<stdio.h>
#include<stdlib.h>

int main(){
    double area;
    struct circle c1={10,10,8.5};
    area=callarea(&c1);
   
    printf("此圓的圓心為(%d, %d),半徑為%.2f,面積為%.2f\n",c1.x,c1.y,c1.radius,area);
    system("pause");
    return 0;
}
double callarea(struct circle *pr){
    double area;
    area=pr->radius*pr->radius*3.14159;
    return area;
}

TQC+ C語言認證範例 505


struct rect{
       int length,width;
       };
int callarea(struct rect *pr);
#include<stdio.h>
#include<stdlib.h>

int main(){
    int area;
    struct rect r1={20,18};
   
    area=callarea(&r1);
   
    printf("此矩形的長為%d, 寬為%d, 面積為%d\n",r1.length,r1.width,area);
   
    system("pause");
    return 0;
}
int callarea(struct rect *pr){
    int area;
    area=pr->length*pr->width;
    return area;
}
                     

TQC+ C語言認證範例 504



#include<stdio.h>
#include<stdlib.h>
struct rect{
           int length,width;
            };
int callarea(struct rect *pr);
int main(){
   
    int area;
    struct rect r1={20,18};
    area=callarea(&r1);
   
    printf("此矩形的長為%d, 寬為%d, 面積為%d\n",r1.length,r1.width,area);
   
    system("pause");
    return 0;
}
int callarea(struct rect *pr){
    int area;
    area=pr->length*pr->width;
    return area;
}

TQC+ C語言認證範例 503


#include<stdio.h>
#include<stdlib.h>
int main(){
    struct circle{
           int x,y;
           double radius;
           };
    double area;
    struct circle c1={10,10,2.5};
    struct circle *pc=&c1;
    area=pc->radius*pc->radius*3.14159;
   
    printf("此圓的圓心為(%d, %d), 面積為%.2f\n",pc->x,pc->y,area);
   
   
    system("pause");
    return 0;
}

TQC+ C語言認證範例 502


#include<stdio.h>
#include<stdlib.h>
struct circle{
           int x,y;
           double radius;
           };
int main(){
    struct circle{
           int x,y;
           double radius;
           };
    double area;
    struct circle c1={10,10,2.5};
    area=c1.radius*c1.radius*3.14159;
   
    printf("此圓的圓心為(%d, %d), 面積為%.2f\n",c1.x,c1.y,area);
    system("pause");
    return 0;
}

TQC+ C語言認證範例 501


#include<stdio.h>
#include<stdlib.h>
int main(){
          struct student{
                 char name[10];
                 int score;
                 };
          struct student st1;
          printf("Enter name: ");scanf("%s",st1.name);
         
          printf("Enter score: ");scanf("%d",&st1.score);
         
          printf("%s的成績是%d\n",st1.name,st1.score);
         
          if(st1.score>=60) printf("恭喜您通過了\n");
          else printf("抱歉您被當了\n");
         
          system("pause");
          return 0;
          }

TQC+ C語言認證範例 410


#include<stdio.h>
#include<stdlib.h>
int Max(int p[][3],int x,int y);
int main(){
    int arr[2][3];
    int maximum,i,j;
    for(i=0;i<2;i++){
                     for(j=0;j<3;j++){
                                     
                     printf("請輸入arr[%d][%d]element: ",i,j);
                     scanf("%d",&arr[i][j]);
                     }
                     }
    printf("\n陣列的元素值分別如下:\n");
    for(i=0;i<2;i++){
                     for(j=0;j<3;j++){
                                     
                      printf("arr[%d][%d]=%d\n",i,j,arr[i][j]);
                      }
                      }
   
    maximum=Max(arr,2,3);
    printf("\n此陣列的最大值為%d\n",maximum);
   
    system("pause");
    return 0;
}
int Max(int p[][3],int x,int y)
{
    int i,j,maxi_value=p[0][0];
    for(i=0;i<x;i++){
                     for(j=0;j<y;j++)  {
                                       printf("%d\n",p[i][j]);
                                       if(maxi_value<p[i][j]) maxi_value=p[i][j];
                     }}
                return maxi_value;
                }

TQC+ C語言認證範例 409


#include<stdio.h>
#include<stdlib.h>
int sum(int p[][3],int n,int m);
int main(){
    int arr2[2][3];
    int total,i,j;
    for(i=0;i<2;i++){
                     for(j=0;j<3;j++){
                                      printf("請輸入arr[%d][%d]: ",i,j);
                                      scanf("%d",&arr2[i][j]);
                                      }
                                      }
     printf("\n陣列之值如下:\n");
     for(i=0;i<2;i++){
                      for(j=0;j<3;j++){
                                       printf("arr[%d][%d]=%d\n",i,j,arr2[i][j]);
                                       }
                                       }
     total=sum(arr2,2,3);
     printf("\n陣列的總和為%d\n",total);
     system("pause");
     return 0;
     }
    int sum(int p[][3],int x,int y){
         int i,j,tot=0;
         for(i=0;i<x;i++){
                          for(j=0;j<y;j++){
                                       tot+=p[i][j];
                                       }
                                       }
                                       return tot;
                                       }  

TQC+ C語言認證範例 408


#include<stdio.h>
#include<stdlib.h>
int Max(int *,int n);
int main(){
    int arr[5];
    int maximum,i;
    for(i=0;i<5;i++){
                     printf("請輸入arr[%d]element: ",i);
                     scanf("%d",&arr[i]);
                     }
    printf("\n陣列的元素值分別如下:\n");
    for(i=0;i<5;i++) printf("arr[%d]=%d\n",i,arr[i]);
   
    maximum=Max(arr,5);
    printf("\n此陣列的最大值為%d\n",maximum);
   
    system("pause");
    return 0;
}
int Max(int *p,int n){
    int i,maxi_value=*p;
    for(i=0;i<n;i++){
                     if(maxi_value<*(p+i)) maxi_value=*(p+i);
                     }
                return maxi_value;
                }

TQC+ C語言認證範例 407


#include<stdio.h>
#include<stdlib.h>
int sum(int *,int n);
int main(){
    int arr[]={10,20,30,40,50};
    int total,i;
    for(i=0;i<5;i++) printf("arr[%d]=%d\n",i,arr[i]);
   
    total=sum(arr,5);
    printf("total=%d\n",total);
    system("pause");
    return 0;
}

int sum(int *p,int n){
    int i,tot=0;
   
    for(i=0;i<n;i++) tot+=*(p+i);
    return tot;
}

TQC+ C語言認證範例 406


#include<stdio.h>
#include<stdlib.h>
void chang(int *,int *);

int main(){
    int i=100,j=200;
    printf("交換前i與j的值: \n");
    printf("i=%d, j=%d\n",i,j);
   
    chang(&i,&j);
    printf("交換後i與j的值: \n");
    printf("i=%d, j=%d\n",i,j);
   
    system("pause");
    return 0;
}

void chang(int *x,int *y){
     int temp;
     temp=*x;
     *x=*y;
     *y=temp;
     }

TQC+ C語言認證範例 405


#include<stdio.h>
#include<stdlib.h>
int main(){
    int arr[2][3]={100,200,300,400,500,600};
    int *ptr2[2]={arr[0],arr[1]};
    int i,j;
 
 
                                   
          for(i=0;i<2;i++){
                           for(j=0;j<3;j++){
                                            printf("arr[%d][%d]=%d\n",i,j,arr[i][j]);
                                            }
                                            }
     printf("\n另一種表示方法\n");
     for(i=0;i<2;i++){
                      for(j=0;j<3;j++){
                                       printf("arr[%d][%d]=%d\n",i,j,*(arr[i]+j));
                                       }
                                       }
                                     
     printf("\n第三種表示方法\n");
     for(i=0;i<2;i++){
                      for(j=0;j<3;j++){
                                       printf("arr[%d][%d]=%d\n",i,j,*(*(ptr2+i)+j));
                                       }
                                       }
       system("pause");
       return 0;
       }

TQC+ C語言認證範例 404


#include<stdio.h>
#include<stdlib.h>
int main(){
    int arr[2][3];
    int i,j;
   
    for(i=0;i<2;i++){
                     for(j=0;j<3;j++){
                                      printf("Enter arr[%d][%d]element: ",i,j);
                                      scanf("%d",&arr[i][j]);
                                      }
                                      }
          for(i=0;i<2;i++){
                           for(j=0;j<3;j++){
                                            printf("arr[%d][%d]=%d\n",i,j,arr[i][j]);
                                            }
                                            }
     printf("\n另一種表示方法\n");
     for(i=0;i<2;i++){
                      for(j=0;j<3;j++){
                                       printf("arr[%d][%d]=%d\n",i,j,*(arr[i]+j));
                                       }
                                       }
                                     
     printf("\n第三種表示方法\n");
     for(i=0;i<2;i++){
                      for(j=0;j<3;j++){
                                       printf("arr[%d][%d]=%d\n",i,j,*(*(arr+i)+j));
                                       }
                                       }
       system("pause");
       return 0;
       }

TQC+ C語言認證範例 403


#include<stdio.h>
#include<stdlib.h>
int main(){
    int arr[]={100,200,300,400,500};
    int *pointer=arr;
    int i;
   
    for(i=0;i<5;i++) printf("arr[%d]=%d\n",i,arr[i]);
   
    printf("\n另一種表示方法\n");
    for(i=0;i<5;i++) printf("arr[%d]=%d\n",i,*(arr+i));
   
    printf("\n第三種表示方法\n");
    for(i=0;i<5;i++) printf("arr[%d]=%d\n",i,*(pointer+i));
   
    system("pause");
    return 0;
}

TQC+ C語言認證範例 402


#include<stdio.h>
#include<stdlib.h>
int main(){
    int num=200;
    int *pointer=&num;
   
    printf("num=%d, *pointer=%d\n",num,*pointer);
    system("pause");
    return 0;
}

TQC+ C語言認證範例 401


#include<stdio.h>
#include<stdlib.h>
int main(){
    int num=100,*pointer;
   
    pointer=&num;
   
    printf("num=%d,*pointer=%d\n",num,*pointer);
    system("pause");
    return 0;
}

TQC+ C語言認證範例 309


#include<stdio.h>
#include<stdlib.h>
int max(int a[],int n);
int main(){
    int arr[5],i,maximum;
    for(i=0;i<5;i++){
                     printf("請輸入陣列arr[%d]元素值: ",i);
                     scanf("%d",&arr[i]);
                     }
   for(i=0;i<5;i++){
                    printf("arr[%d]=%d\n",i,arr[i]);
                    }
   maximum=max(arr,5);
   printf("此陣列最大值為%d\n",maximum);
   system("pause");
   return 0;
}
int max(int a[],int n){
    int k,M;
    M=a[0];
    for(k=1;k<n;k++){
                     if(a[k]>M) M=a[k];
                     }
                    return M;
                    }

TQC+ C語言認證範例 308


#include<stdio.h>
#include<stdlib.h>
double sum(double a[],int n);
int main(){
    double arr[5],total;
    int i;
    for(i=0;i<5;i++){
                     printf("請輸入陣列arr[%d]元素值: ",i);
                     scanf("%lf",&arr[i]);
                     }
     for(i=0;i<5;i++) printf("arr[%d]=%.2f\n",i,arr[i]);
   
     total=sum(arr,5);
     printf("此陣列的總和為%.2f\n",total);
     system("pause");
     return 0;
     }
    double sum(double a[],int n){
           int k;
           double tot=0;
           for(k=0;k<n;k++) tot+=a[k];
           return tot;
           }
                   

TQC+ C語言認證範例 307


#include<stdio.h>
#include<stdlib.h>
int main(){
    double arr2[2][3],total=0.0;
    int i,j;
   
    for(i=0;i<2;i++){
                     for(j=0;j<3;j++){
                                       printf("請輸入arr[%d][%d]的值: ",i,j);
                                       scanf("%lf",&arr2[i][j]);
                                       total+=arr2[i][j];
                                       }
                                       }
         printf("總和為%.2f\n",total);
         system("pause");
         return 0;
         }

TQC+ C語言認證範例 306


#include<stdio.h>
#include<stdlib.h>
int main(){
    int arr[6]={10,20,30,40,50,60};
    int i,total=0;
    for(i=0;i<6;i++){
                      total+=arr[i];
                      }
    printf("總和為%d\n",total);
    system("pause");
    return 0;
}

TQC+ C語言認證範例 305-2


int callTotal(int x,int y){
    int sum,x,y;
    sum=x+y;
    return sum;
}

TQC+ C語言認證範例 305-1


#include<stdio.h>
#include<stdlib.h>
int x,y;
int callTotal();
int main(){
    int tot;
    printf("請輸入x,y的值: ");
    scanf("%d %d",&x,&y);
    tot=callTotal();
    printf("%d+%d=%d\n",x,y,tot);
    system("pause");
    return 0;
}
int callTota(void){
    int sum,x,y;
    sum=x+y;
    return sum;
}

TQC+ C語言認證範例 304


#include<stdio.h>
#include<stdlib.h>
void callFun();
int main(){
          int i;
          for(i=1;i<=5;i++){
                            callFun();
                            }
          system("pause");
          return 0;
          }
void callFun(){
     int ai=100;
     static int si=100;
     ai++;
     si++;
     printf("ai=%d, si=%d\n",ai,si);
}

TQC+ C語言認證範例 303


#include<stdio.h>
#include<stdlib.h>
int num=100;

void subFun();
int main(){
    int num=200;
    printf("在main函數中的num為%d\n",num);
    subFun();
    system("pause");
    return 0;
}

void subFun(void){
    printf("在subFUN函數中的num為%d\n",num);
}

TQC+ C語言認證範例 302


#include<stdio.h>
#include<stdlib.h>
int adjust(int);
int main(){
    int score,final;
    printf("Enter your score: ");
    scanf("%d",&score);
    final=adjust(score);
    printf("after adjust: %d\n",final);
    system("pause");
    return 0;
}
int adjust(int score){//紅色是回傳型態int藍色是使用score收進參數(型態是int)
int temp;
if(score>=60) temp=score+5;
else temp=score+10;
return temp; //下回傳指令
}

TQC+ C語言認證範例 301


#include<stdio.h>
#include<stdlib.h>
void Star();
int main(){
    printf("呼叫印出星星的函數!!!\n");
    Star();
    printf("我喜歡c語言\n");
    Star();
    printf("結束函數呼叫\n");
    system("pause");
    return 0;
}
void Star(void){//無回傳型態無傳入參數
     int i;
     for(i=1;i<=30;i++){
                        printf("*");
                     
                        }
                        printf("\n");
                        }

TQC+ C語言認證範例 310


#include<stdio.h>
#include<stdlib.h>
int main(){
    int arr[5]={100,200,300,400,500};
    int i;
 
    printf("陣列元素的值如下:\n");
    for(i=0;i<5;i++) printf("arr[%d]=%d\n",i,arr[i]);
 
    printf("\n陣列元素的位址如下:\n");
    for(i=0;i<5;i++) printf("&arr[%d]=%p\n",i,&arr[i]);
 
    printf("\n陣列元素的位址如下:\n");
    for(i=0;i<5;i++) printf("&arr[%d]=%p\n",i,arr+i);
 
    system("pause");
    return 0;
}

TQC+ C語言認證範例 210


#include<stdio.h>
#include<stdlib.h>
int main(){
    int i=1,total=0;
    do{
        if(i%2==0) total+=i;
        i++;
        }while(i<=100);
        printf("1到100的偶數和: %d\n",total);
    system("pause");
return 0;
}

TQC+ C語言認證範例 209


#include<stdio.h>
#include<stdlib.h>
int main(){
    int i=1,total=0;
    do{
        total+=i;
        i+=2;
        }while(i<=100);
    printf("1到100的奇數和: %d\n",total);
    system("pause");
    return 0;
}

TQC+ C語言認證範例 208


#include<stdio.h>
#include<stdlib.h>
int main(){
    int i,total=0;
    for(i=1;i<=100;i++){
                        if(i%2==0) total+=i;
                        }
    printf("1到100的偶數和: %d\n",total);
system("pause");
return 0;
}

TQC+ C語言認證範例 207


#include<stdio.h>
#include<stdlib.h>
int main(){
    int i=1,total=0;
    while(i<=100){
                 total+=i;
                 i++;
                 }
    printf("1加到100的總和:%d\n",total);
system("pause");
return 0;
}

TQC+ C語言認證範例 206


#include<stdio.h>
#include<stdlib.h>
int main(){
    int i=1,total=0;
    while(i<=100){
                  total+=i;
                  i++;
                  }
    printf("1加到100的總和:%d\n",total);
   
system("pause");
return 0;
}

TQC+ C語言認證範例 205


#include<stdio.h>
#include<stdlib.h>
int main(){
    int i,num;
    int num1=0,num2=0,num3=0,num4=0,other=0;
    for(i=1;i<=10;i++){
                      printf("\n班長候選人如下:\n1: 小王\n2: 小李\n3: 小蔡\n4: 小陳\n");
                      printf("請問您要選哪位候選人(1-4):");
                      scanf("%d",&num);
                      switch(num){
                                  case 1:num1++;break;
                                  case 2:num2++;break;
                                  case 3:num3++;break;
                                  case 4:num4++;break;
                                  default:other++;printf("您輸入的號碼不正確\n");
                                  }
                           printf("目前得票數\n小王:%d, 小李:%d, 小蔡:%d, 小陳:%d, 廢票:%d\n",num1,num2,num3,num4,other);
                           }
                          system("pause");
                          return 0;
                          }
                     

TQC+ C語言認證範例 204


#include<stdio.h>
#include<stdlib.h>
int main(){
    char ch;
    printf("請問的身份:以字母表示分別如下:\nU:表示大學生,M:表示研究生,P:表示博士生 ");
    scanf("%c",&ch);
    switch(ch){
               case 'U':printf("您是大學生\n");break;
               case 'M':printf("您是研究生\n");break;
               case 'P':printf("您是博士生\n");break;
               default:printf("您輸入身份不正確\n");
               }
              system("pause");
              return 0;
              }

TQC+ C語言認證範例 203


#include<stdio.h>
#include<stdlib.h>
int main(){
    int  floor;
    printf("Which floor do you live(1-4): ");
    scanf("%d",&floor);
    switch(floor){
                  case 1:printf("Your floor is 1\n");break;
                  case 2:printf("Your floor is 2\n");break;
                  case 3:printf("Your floor is 3\n");break;
                  case 4:printf("Your floor is 4\n");break;
                  default:printf("Floor is wrong in your enter");
                  }
    system("pause");
    return 0;
}