自考“高級(jí)語(yǔ)言程序設(shè)計(jì)”習(xí)題答案詳解(22)

字號(hào):

6.輸入一個(gè)字符串,將其中的所有大寫字母改為小寫字母,而所有小寫字母全部改為大寫字母,然后輸出。
    「解」程序先輸入字符率,然后順序考察輸入字符串中的字符,當(dāng)發(fā)現(xiàn)是大寫字母時(shí),將它改寫成對(duì)應(yīng)的小寫字母,而當(dāng)它是小寫字母時(shí),就將它改寫成對(duì)應(yīng)的大寫字母。若變量ch中的字符是大寫字母,則與它對(duì)應(yīng)的小寫字母的表達(dá)式可以寫成ch- ‘A’+‘a(chǎn)’ ;類似地,若變量ch中的字符是小寫字母,則與它對(duì)應(yīng)的大寫字母的表達(dá)式可以寫成ch-‘a(chǎn)’+‘A’ .完整程序如下:
    # include
    # define N 200
    main()
    { char s[N] ;
    int i;
    printf(“ Enter string! \n”);
    scanf (“%s” ,s);
    for(i=0; s?。健甛0’;i++)
    if(s >=‘A’&&s <=‘Z’ )
    s=s -‘x’+‘a(chǎn)’ ;
    else if(s >=‘a(chǎn)’&& s <=‘z’)
    s= s-‘a(chǎn)’ +‘A’ ;
    printf(“s=%s\n”,s);
    }
    7.設(shè)某班50名學(xué)生的三科成績(jī)表如下:
    課程一 課程二 課程三
    …… …… ……
    試編一個(gè)程序,輸入這50個(gè)學(xué)生的三科成績(jī),計(jì)算并輸出每科成績(jī)的平均分。
    「解」程序定義一個(gè)50行3列的二維數(shù)組,用于存儲(chǔ)全班學(xué)生的成績(jī)。程序順序輸入各個(gè)學(xué)生的三科成績(jī),然后按列的順序,累計(jì)各科總分,并計(jì)算平均分。完整程序如下:
    # include
    # define N 50
    # define M 3
    main()
    {int score[N][M], i,j,t;
    double a[M];
    printf(“Enter scores!\n”);
    for(i=0;i< N; i++)
    for(j=0;j    scanf(“%d”,&t);score[j]=t;
    }
    for(j=0;j    for(j=0;j< M;j++){
    for(i=0;i< N; i++)
    a[j]+= score[j];
    a[j]/= N;
    }
    for(j=0;j    printf(“課程%d的平均分是%.2f\n”, j+1,a[j]);
    }