版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
XI`ANTECHNOLOGICALUNIVERSITY實(shí)驗(yàn)報(bào)告實(shí)驗(yàn)課程名稱計(jì)算機(jī)程序設(shè)計(jì)基礎(chǔ)專業(yè):機(jī)械設(shè)計(jì)及其自動(dòng)化班級(jí):130209姓名:陳小彬?qū)W號(hào):130209102實(shí)驗(yàn)學(xué)時(shí):24學(xué)時(shí)指導(dǎo)教師:楊盛泉成績:2016年03月08日西安工業(yè)大學(xué)實(shí)驗(yàn)報(bào)告專業(yè)機(jī)械設(shè)計(jì)制造及其自動(dòng)化班級(jí)130209姓名陳小彬?qū)W號(hào)130209102實(shí)驗(yàn)課程計(jì)算機(jī)程序設(shè)計(jì)基礎(chǔ)指導(dǎo)教師楊盛泉實(shí)驗(yàn)日期20160308同實(shí)驗(yàn)者實(shí)驗(yàn)項(xiàng)目熟悉VC++語言運(yùn)行環(huán)境實(shí)驗(yàn)設(shè)備及器材計(jì)算機(jī)一、實(shí)驗(yàn)?zāi)康?、了解VC++6.0系統(tǒng)安裝要求以及安裝過程。2、了解VC++6.0系統(tǒng)的菜單結(jié)構(gòu)。3、了解C源程序的書寫格式。4、通過運(yùn)行簡(jiǎn)單的C源程序,掌握C語言上機(jī)步驟,了解C程序的運(yùn)行步驟。5、掌握在VC++6.0環(huán)境下檢錯(cuò)誤的方法。二、實(shí)驗(yàn)重點(diǎn)與難點(diǎn)重點(diǎn):熟悉VC++6.0語言的編譯環(huán)境,了解在該系統(tǒng)上如何編輯、編譯、連接和運(yùn)行一個(gè)C程序。難點(diǎn):在VC++6.0語言的編譯環(huán)境下根據(jù)錯(cuò)誤提示,修改程序,將程序調(diào)試正確。三、實(shí)驗(yàn)內(nèi)容程序1:運(yùn)用printf輸出一行文字welcome!。#include<stdio.h>voidmain(){printf("welcome!\n");輸出:程序2:輸入直徑,輸出圓的面積和周長。#include<stdio.h>#definepi3.14voidmain(){intr,d;doublearea,c;/*定義area為圓的面積,c為圓的周長*/scanf("%d",&r);d=2*r;西安工業(yè)大學(xué)實(shí)驗(yàn)報(bào)告area=pi*r*r;printf("d=%d,c=%f,area=%f\n",d,c,area);輸出:程序3:輸入三個(gè)整數(shù)輸出三個(gè)數(shù)中的最大值。#include<stdio.h>intmax(intx,inty,intz);main(){inta,b,c,d;printf("Enterthreeinteger:");scanf("%d%d%d",&a,&b,&c);d=max(a,b,c);printf("max=%d\n",d);}intmax(intx,inty,intz){intw;if(x>=y) {if(x>=z)w=x;elsew=z; }else{if(y>=z)w=y;elsew=z;}returnw;}程序4:輸入的寬度控制。#include<stdio.h>voidmain(){inta,b,c;scanf("%2d%3d%4d",&a,&b,&c);printf("a=%d,b=%d,c=%d\n",a,b,c);}}西安工業(yè)大學(xué)實(shí)驗(yàn)報(bào)告程序5:算數(shù)運(yùn)算#include<stdio.h>voidmain(){ inta,b,c,d; unsignedu; a=12; b=-24; u=10; c=a+u; d=b+u;printf("c=%d,d=%d\n",c,d);}輸出:四、討論與總結(jié)通過本次實(shí)驗(yàn)使我了解了VC++6.0的界面環(huán)境,如何新建和打開一個(gè)C程序,還有就是知道了C程序的格式,我知道了運(yùn)行C程序的步驟,在哪查看和修改程序的錯(cuò)誤,知道了輸入的數(shù)據(jù)間要有分隔符(空格、tab、回車),要嚴(yán)格按其格式進(jìn)行逐個(gè)輸入。西安工業(yè)大學(xué)實(shí)驗(yàn)報(bào)告專業(yè)機(jī)械設(shè)計(jì)制造及其自動(dòng)化班級(jí)130209姓名陳小彬?qū)W號(hào)130209102實(shí)驗(yàn)課程計(jì)算機(jī)程序設(shè)計(jì)基礎(chǔ)指導(dǎo)教師楊盛泉實(shí)驗(yàn)日期20160315同實(shí)驗(yàn)者實(shí)驗(yàn)項(xiàng)目數(shù)據(jù)類型、運(yùn)算符和表達(dá)式實(shí)驗(yàn)設(shè)備及器材計(jì)算機(jī)實(shí)驗(yàn)?zāi)康恼莆詹煌愋蛿?shù)據(jù)之間賦值規(guī)律與方法。掌握++和—的使用。掌握基本數(shù)據(jù)輸入、輸出的方法。掌握并熟練使用各種輸入/輸出格式.掌握C語言的數(shù)據(jù)類型,熟悉如何定義一個(gè)整型、字符型和實(shí)型的變量。以及對(duì)他們的賦值方法。二、實(shí)驗(yàn)重點(diǎn)與難點(diǎn)重點(diǎn):輸入有代表性的程序,比較整形數(shù)據(jù)、字符型數(shù)據(jù)和實(shí)型數(shù)據(jù)的區(qū)別和聯(lián)系。通過程序理解C語言編譯系統(tǒng)的自動(dòng)數(shù)據(jù)類型轉(zhuǎn)換機(jī)制。難點(diǎn):各種輸入/輸出格式。各種運(yùn)算符的優(yōu)先級(jí)和結(jié)合性及自加(++)和自減(--)運(yùn)算符的使用。逗號(hào)表達(dá)式。三、實(shí)驗(yàn)內(nèi)容程序1:將大寫字母轉(zhuǎn)換成小寫字母。#include<stdio.h>main(){charc1,c2;printf("請(qǐng)輸入一個(gè)大寫字母:\n");c1=getchar();if(!(c1>='A'&&c1<='Z')){ printf("輸入eror,請(qǐng)輸入一個(gè)大寫字母:\n"); return;}elsec2=c1-'A'+'a';printf("c1=%c,c2=%c\n",c1,c2);}程序西安工業(yè)大學(xué)實(shí)驗(yàn)報(bào)告#include<stdio.h>voidmain(){inti=8;printf("開始:%d",i);printf("01:%d\n",i++);printf("結(jié)束:%d",i);printf("開始:%d",i);printf("02:%d\n",--i);printf("結(jié)束:%d",i);printf("開始:%d",i);printf("03:%d\n",i++);printf("結(jié)束:%d",i);printf("開始:%d",i);printf("04:%d\n",i--);printf("結(jié)束:%d",i);printf("開始:%d",i);printf("05:%d\n",-i++);printf("結(jié)束:%d",i);printf("開始:%d",i);printf("06:%d\n",-i--);printf("結(jié)束:%d",i);}輸出:程序3:字符輸入/輸出。#include<stdio.h>main(){charch1='A',ch2,ch3;inti=5,j,k;ch2=ch1++;ch3=++ch1;j=i--;k=--i;printf("ch1=%c,ch2=%c,ch3=%c\n",ch1,ch2,ch3);printf("i=%d,j=%d,k=%d\n",i,j,k);}輸出:西安工業(yè)大學(xué)實(shí)驗(yàn)報(bào)告程序4:自增運(yùn)算符(++)在前和在后的區(qū)別。#include<stdio.h>voidmain(){inti=5,j=5,p,q;p=(i++)+(i++)+(i++);q=(++j)+(++j)+(++j);printf("i=%d,j=%d,p=%d,q=%d\n",i,j,p,q);}輸出:程序5:#include<stdio.h>voidmain(){inti=5,j=5,p,q;p=i++;q=++j;printf("i=%d,j=%d,p=%d,q=%d\n",i,j,p,q);p=p+(i++);q=q+(++j);printf("i=%d,j=%d,p=%d,q=%d\n",i,j,p,q);p=p+(i++);q=q+(++j);printf("i=%d,j=%d,p=%d,q=%d\n",i,j,p,q);}輸出:程序6:類型的強(qiáng)制轉(zhuǎn)換:一般形式:(類型名)(表達(dá)式)#include<stdio.h>voidmain(){doublea,b,c,av;printf("Pleaseinputthreea,b,c:");scanf("%lf%le%lf",&a,&b,&c);printf("a=%f,b=%f,c=%f\n",a,b,c);av=(a+b+c)/3;西安工業(yè)大學(xué)實(shí)驗(yàn)報(bào)告av*=100;av+=0.5;av=(int)av;printf("av=%f\n",av);av/=100;printf("av=%f\n",av);輸出:}四、討論與總結(jié)通過本次實(shí)驗(yàn)我掌握了不同類型數(shù)據(jù)之間賦值規(guī)律與方法,掌握基本數(shù)據(jù)輸入、輸出的方法,掌握并熟練使用各種輸入/輸出格式,掌握C語言的數(shù)據(jù)類型,熟悉了如何定義一個(gè)整型、字符型和實(shí)型的變量,以及對(duì)他們的賦值方法,掌握了++和—的使用,特別是++(--)在前和++(--)在后的區(qū)別。類型的強(qiáng)制轉(zhuǎn)換,類型名外的括號(hào)是不能省略的。而表達(dá)式如果只有一個(gè)括號(hào)可以省略。西安工業(yè)大學(xué)實(shí)驗(yàn)報(bào)告專業(yè)機(jī)械設(shè)計(jì)制造及其自動(dòng)化班級(jí)130209姓名陳小彬?qū)W號(hào)130209102實(shí)驗(yàn)課程計(jì)算機(jī)程序設(shè)計(jì)基礎(chǔ)指導(dǎo)教師楊盛泉實(shí)驗(yàn)日期20160322同實(shí)驗(yàn)者實(shí)驗(yàn)項(xiàng)目順序結(jié)構(gòu)程序設(shè)計(jì)實(shí)驗(yàn)設(shè)備及器材計(jì)算機(jī)一、實(shí)驗(yàn)?zāi)康?、了解順序結(jié)構(gòu)程序的執(zhí)行過程。2、掌握賦值表達(dá)式和賦值語句、復(fù)合語句的使用。3、掌握各種類型數(shù)據(jù)的輸入/輸出方法,能正確使用各種格式轉(zhuǎn)換符。4、掌握簡(jiǎn)單程序的編程方法和技巧。二、實(shí)驗(yàn)重點(diǎn)與難點(diǎn)重點(diǎn):掌握輸入/輸出函數(shù)scanf()、printf()格式和應(yīng)用。字符輸入/輸出函數(shù)getchar()、putchar()格式和應(yīng)用。難點(diǎn):scanf()函數(shù)中轉(zhuǎn)換符的使用方法。printf()函數(shù)中轉(zhuǎn)換符的使用方法。三、實(shí)驗(yàn)內(nèi)容程序1:字符和整型輸入的順序?qū)敵龅挠绊憽?include<stdio.h>main(){charc1,c2,c3;intm;scanf("%c%c%c%d",&c1,&c2,&c3,&m);printf("m=%d\n",m);printf("c1=%c,c2=%c,c3=%c\n",c1,c2,c3);scanf("%d%c%c%c",&m,&c1,&c2,&c3);printf("m=%d\n",m);printf("c1=%c,c2=%c,c3=%c\n",c1,c2,c3);}西安工業(yè)大學(xué)實(shí)驗(yàn)報(bào)告#include<stdio.h>/*ax+b=0*/main(){ floata,b,x;scanf("%f%f",&a,&b); if(a==0) { printf("Error!\n"); return; } x=(0-b)/a;printf("x=%f\n",x);}程序3:c語言表示數(shù)值有精度限制。#include<stdio.h>#include<math.h>/*ax+b=0*/main(){ floata,b,x;scanf("%f%f",&a,&b); if(fabs(a-5.1)<=1e-6) { printf("a=%f\n",a);printf("Error!\n"); return; } x=(0-b)/a;printf("x=%f\n",x);}程序4:交換兩個(gè)數(shù)字。#include<stdio.h>main(){ intx,y,t;西安工業(yè)大學(xué)實(shí)驗(yàn)報(bào)告scanf("%d%d",&西安工業(yè)大學(xué)實(shí)驗(yàn)報(bào)告 t=x;x=y;y=t;printf("x=%d,y=%d,t=%d\n",x,y,t);}::程序5:輸出格式控制。#include<stdio.h>main(){ floata; doubleb;scanf("%f%lf",&a,&b);printf("a=%08.2f,b=%.5f\n",a,b);}程序6:將兩個(gè)兩位數(shù)的正整數(shù)a、b合并形成一個(gè)整數(shù)放在c中。合并的方式是:將a數(shù)的十位和個(gè)位數(shù)依次放在c數(shù)的百位和個(gè)位上,b數(shù)的十位和個(gè)位數(shù)依次放在c數(shù)的十位和千位上。例如,當(dāng)a=45,b=12。調(diào)用該函數(shù)后,c=2415。#include<stdio.h>voidmain(){inta,b;longc;printf("Inputa,b:");scanf("%d%d",&a,&b);c=a/10*100+a%10*1+b/10*10+b%10*1000;printf("Theresultis:%ld\n",c);}討論與總結(jié)通過本次實(shí)驗(yàn)的學(xué)習(xí),我了解順序結(jié)構(gòu)程序的執(zhí)行過程,知道了語句和表達(dá)式的區(qū)別,掌握賦值表達(dá)式和賦值語句、復(fù)合語句的使用,掌握各種類型數(shù)據(jù)的輸入/輸出方法,能正確使用各種格式轉(zhuǎn)換符,掌握簡(jiǎn)單程序的編程方法和技巧,掌握輸入/輸出函數(shù)scanf()、printf()格式控制方法和應(yīng)用,字符輸入/輸出函數(shù)getchar()、putchar()格式和應(yīng)用,scanf()函數(shù)中轉(zhuǎn)換符的使用方法,printf()函數(shù)中轉(zhuǎn)換符的使用方法西安工業(yè)大學(xué)實(shí)驗(yàn)報(bào)告專業(yè)機(jī)械設(shè)計(jì)制造及其自動(dòng)化班級(jí)130209姓名陳小彬?qū)W號(hào)130209102實(shí)驗(yàn)課程計(jì)算機(jī)程序設(shè)計(jì)基礎(chǔ)指導(dǎo)教師楊盛泉實(shí)驗(yàn)日期20160329同實(shí)驗(yàn)者實(shí)驗(yàn)項(xiàng)目選擇結(jié)構(gòu)程序設(shè)計(jì)實(shí)驗(yàn)設(shè)備及器材計(jì)算機(jī)一、實(shí)驗(yàn)?zāi)康?、熟悉用if語句編寫選擇程序的方法。2、學(xué)會(huì)正確使用邏輯運(yùn)算符和邏輯表達(dá)式。3、熟練掌握各種選擇結(jié)構(gòu)包括if-else及其嵌套、if-elseif-else形式的多重選擇的使用。4、熟練掌握switch形式的多重選擇結(jié)構(gòu)的使用。5、了解條件表達(dá)式的使用方法。二、實(shí)驗(yàn)重點(diǎn)與難點(diǎn)重點(diǎn):1、學(xué)會(huì)正確使用邏輯運(yùn)算符和邏輯表達(dá)式。2、熟練掌握if語句和switch語句。難點(diǎn):邏輯運(yùn)算表達(dá)式的計(jì)算。選擇結(jié)構(gòu)的流程控制以及if與else的配對(duì)原則。break的作用和原理。實(shí)驗(yàn)內(nèi)容程序1:給學(xué)生成績劃分等級(jí),并輸出。#include<stdio.h>main(){intscore;printf("Pleaseinputscore:\n");scanf("%d",&score); if(score>89)printf("A\n"); elseif(score>79)printf("B\n");elseif(score>69)printf("C\n"); elseif(score>59)printf("D\n");elseprintf("E\n");getch();}西安工業(yè)大學(xué)實(shí)驗(yàn)報(bào)告#include<stdio.h>voidmain(){ charx; x=getchar(); if(x>='0'&&x<='9')printf("%c是數(shù)字\n",x);elseif(x>='a'&&x<='z')printf("%c是小寫\n",x);elseif(x>='A'&&x<='Z')printf("%c是大寫\n",x);elseprintf("%c是其他\n",x);}輸出:程序3:求兩個(gè)數(shù)的最大公約數(shù)。#include<stdio.h>/*最大公約數(shù)*/main(){intx,y,i,t=1;scanf("%d%d",&x,&y);for(i=1;i<=x;i++){ if(x%i==0&&y%i==0&&t<i)t=i;}printf("t=%d\n",t);}輸出:程序4:編寫函數(shù),通過鍵盤讀入一個(gè)整數(shù)k,判斷k能否被3或7整除。#include<stdio.h>voidmain(){intk;printf("請(qǐng)輸入變量k的值:");scanf("%d",&k);if(k%3==0||k%7==0)printf("%d能整除!",k);elseprintf("%d不能整除!",k);}西安工業(yè)大學(xué)實(shí)驗(yàn)報(bào)告#include<stdio.h>voidmain(){intg;printf("請(qǐng)輸入某個(gè)學(xué)生的成績g=");scanf("%d",&g);switch(g/10){case10:case9:printf("A\n");break;case8:printf("B\n");break;case7:printf("C\n");break;case6:printf("D\n");break;default:printf("E\n");break;}printf("\n");}輸出:四、討論與總結(jié)通過本次實(shí)驗(yàn)我學(xué)會(huì)了,switch與ifelse的區(qū)別兩者本質(zhì)的區(qū)別是if-else語句更適合于對(duì)區(qū)間(范圍)的判斷,而switch語句更適合于對(duì)離散值的判斷switch后表達(dá)式外的括號(hào)是不能省略的。表達(dá)式只要是合法的C表達(dá)式即可,括號(hào)外是沒有分號(hào)的,花括號(hào)中的部分叫做該switch語句的語句體,case和常量表達(dá)式表達(dá)式之間要有空格,并且把case和常量表達(dá)式合稱為一個(gè)標(biāo)號(hào),常量表達(dá)式和冒號(hào)之間也要有空格。語句可以省,語句體中標(biāo)號(hào)的次序是沒有要求西安工業(yè)大學(xué)實(shí)驗(yàn)報(bào)告專業(yè)機(jī)械設(shè)計(jì)制造及其自動(dòng)化班級(jí)130209姓名陳小彬?qū)W號(hào)130209102實(shí)驗(yàn)課程計(jì)算機(jī)程序設(shè)計(jì)基礎(chǔ)指導(dǎo)教師楊盛泉實(shí)驗(yàn)日期20160405同實(shí)驗(yàn)者實(shí)驗(yàn)項(xiàng)目循環(huán)結(jié)構(gòu)程序設(shè)計(jì)(一)實(shí)驗(yàn)設(shè)備及器材計(jì)算機(jī)一、實(shí)驗(yàn)?zāi)康?、熟悉并掌握用while語句和do-while語句實(shí)現(xiàn)循環(huán)的方法。2、熟悉并掌握for語句構(gòu)成的循環(huán)結(jié)構(gòu)。3、了解并讀懂用goto語句和if語句的組合構(gòu)成循環(huán)。4、熟悉并掌握循環(huán)結(jié)構(gòu)中break與continue語句的作用原理以及使用方法。5、掌握在程序設(shè)計(jì)中用循環(huán)實(shí)現(xiàn)一些常用算法。二、實(shí)驗(yàn)重點(diǎn)與難點(diǎn)重點(diǎn):1、while語句、do-while語句和
for
語句實(shí)現(xiàn)循環(huán)的方法。2、break與continue語句的作用原理以及使用方法。難點(diǎn):如何正確的設(shè)定循環(huán)條件,以及如何控制循環(huán)的次數(shù)。break與continue語句的作用原理以及使用方法。理解循環(huán)嵌套的執(zhí)行過程。三、實(shí)驗(yàn)內(nèi)容程序1:輸出九九乘法表。#include<stdio.h>voidmain(){inti,j;for(i=1;i<=9;i++){/*{j=1;while(j<=i){printf("%d*%d=%2d",j,i,i*j);j++;}putchar('\n');}*/西安工業(yè)大學(xué)實(shí)驗(yàn)報(bào)告{ printf("%d*%d=%2d",j,i,i*j);}putchar('\n');}}輸出:程序2:輸出由“*”組成的菱形圖形。#include<stdio.h>main(){inti,j;for(i=1;i<=3;i++){for(j=1;j<=3-i;j++)printf("");for(j=1;j<=2*i-1;j++)printf("*");putchar('\n');}for(i=2;i>=1;i--){for(j=1;j<=3-i;j++)printf("");for(j=1;j<=2*i-1;j++)printf("*");putchar('\n');}}輸出:西安工業(yè)大學(xué)實(shí)驗(yàn)報(bào)告#include<stdio.h>voidmain(){intx,max,i;scanf("%d",&max);i=1;do{scanf("%d",&x); if(x>max)max=x; i=i+1;}while(i<9);printf("max=%d\n",max);}輸入:程序4:編寫函數(shù),輸出500-800之間能被3或7整除的所有數(shù),按每行10個(gè)為一組進(jìn)行輸出。#include<stdio.h>voidmain(){inti,k=0;for(i=500;i<=800;i++)if(i%3==0||i%7==0){printf("%5d",i);k++;if(k%10==0)printf("\n");}printf("\nk=%d\n",k);}輸出:西安工業(yè)大學(xué)實(shí)驗(yàn)報(bào)告通過本次實(shí)驗(yàn)我學(xué)會(huì)了,熟悉了三種循環(huán)結(jié)構(gòu),用while語句、do-while語句和for語句實(shí)現(xiàn)循環(huán)的方法。熟悉并掌握循環(huán)結(jié)構(gòu)中break與continue語句的作用原理以及使用方法,break結(jié)束本次循環(huán),但不能結(jié)束外循環(huán),continue語句是結(jié)束本次循環(huán),二者不可混用。西安工業(yè)大學(xué)實(shí)驗(yàn)報(bào)告專業(yè)機(jī)械設(shè)計(jì)制造及其自動(dòng)化班級(jí)130209姓名陳小彬?qū)W號(hào)130209102實(shí)驗(yàn)課程計(jì)算機(jī)程序設(shè)計(jì)基礎(chǔ)指導(dǎo)教師楊盛泉實(shí)驗(yàn)日期20160412同實(shí)驗(yàn)者實(shí)驗(yàn)項(xiàng)目循環(huán)結(jié)構(gòu)程序設(shè)計(jì)(二)實(shí)驗(yàn)設(shè)備及器材計(jì)算機(jī)一、實(shí)驗(yàn)?zāi)康?、進(jìn)一步熟悉掌握用while語句、do-while語句和
for
語句實(shí)現(xiàn)循環(huán)的方法。
2、掌握在程序設(shè)計(jì)中使用多重循環(huán)。
3、了解并讀懂用goto語句和if語句的組合構(gòu)成循環(huán)。4、熟悉并掌握循環(huán)結(jié)構(gòu)中break與continue語句的作用原理以及使用方法。5、掌握在程序設(shè)計(jì)中用循環(huán)實(shí)現(xiàn)一些常用算法。二、實(shí)驗(yàn)重點(diǎn)與難點(diǎn)重點(diǎn):1、while語句、do-while語句和
for
語句實(shí)現(xiàn)循環(huán)的方法。2、break與continue語句的作用原理以及使用方法。難點(diǎn):如何正確的設(shè)定循環(huán)條件,以及如何控制循環(huán)的次數(shù)。break與continue語句的作用原理以及使用方法。理解循環(huán)嵌套的執(zhí)行過程。實(shí)驗(yàn)內(nèi)容程序1:一個(gè)百萬富翁遇到一個(gè)陌生人,陌生人找他談了一個(gè)換錢的計(jì)劃。該計(jì)劃如下:我每天給你
m元,
而你第一天只需給我一分錢。第二天我仍給你
m元,你給我
2
分錢。第三天,我仍給你
m元,你給我
4
分錢。依次類推,你每天給我的錢是前一天的兩倍,直到一個(gè)月(38)天。百萬富翁很高興,欣然接受這
個(gè)契約?,F(xiàn)要求,編寫一個(gè)程序,由鍵盤輸入
m,計(jì)算多少天后,百萬富翁開始虧錢。#include<stdio.h>#include<math.h>main(){intn,m,i;longl;scanf("%d",&m); for(i=1;i<=38;i++)if(0.01*(pow(2,i-1)-1)-i*m>=0)break; printf("%d",i-1);printf("\n");}西安工業(yè)大學(xué)實(shí)驗(yàn)報(bào)告程序2:break的用法并求出數(shù)組元素的和。#include<stdio.h>main(){inti,j,s=0;inta[2][4]={{1,4,7},{2,5,8}};for(i=0;i<2;i++){for(j=0;j<4;j++){if(a[i][j]==0)break;elses=s+a[i][j];}}printf("%d",s);putchar('\n');}程序3:輸出星號(hào):************#include<stdio.h>voidmain(){inti,j,k;for(i=1;i<4;i++){for(j=1;j<i;j++)printf("");for(k=1;k<=4;k++)printf("*");printf("\n");}}輸出:程序4:編寫函數(shù),計(jì)算s=1+2+3....直到s的值大于t停止累加,輸出s的值。#include<stdio.h>voidmain(){inti,s=0,t;printf("請(qǐng)輸入變量t的值:");scanf("%d",&t);西安工業(yè)大學(xué)實(shí)驗(yàn)報(bào)告scanf("%d",&t);for(i=1;;i++){s+=i;if(s>t)break;}printf("s=%d\n",s);}四、討論與總結(jié)通過本次實(shí)驗(yàn)我學(xué)會(huì)了,熟悉了三種循環(huán)結(jié)構(gòu),用while語句、do-while語句和for語句實(shí)現(xiàn)循環(huán)的方法。熟悉并掌握循環(huán)結(jié)構(gòu)中break與continue語句的作用原理以及使用方法,break結(jié)束本次循環(huán),但不能結(jié)束外循環(huán),continue語句是結(jié)束本次循環(huán),二者不可混用。西安工業(yè)大學(xué)實(shí)驗(yàn)報(bào)告專業(yè)機(jī)械設(shè)計(jì)制造及其自動(dòng)化班級(jí)130209姓名陳小彬?qū)W號(hào)130209102實(shí)驗(yàn)課程計(jì)算機(jī)程序設(shè)計(jì)基礎(chǔ)指導(dǎo)教師楊盛泉實(shí)驗(yàn)日期20160419同實(shí)驗(yàn)者實(shí)驗(yàn)項(xiàng)目數(shù)組實(shí)驗(yàn)設(shè)備及器材計(jì)算機(jī)一、實(shí)驗(yàn)?zāi)康?、理解數(shù)組的概念和存儲(chǔ)特點(diǎn)。2、掌握一維數(shù)組和二維數(shù)組的定義、初始化、賦值和輸入/輸出方法。3、了解一維數(shù)組和二維數(shù)組的定義、初始化、賦值和輸入/輸出方法。4、掌握字符數(shù)組和字符串的關(guān)系及其應(yīng)用。5、了解常見的字符串函數(shù)的功能及其使用方法。二、實(shí)驗(yàn)重點(diǎn)與難點(diǎn)重點(diǎn):1、掌握一維數(shù)組和二維數(shù)組的定義、初始化、賦值和輸入/輸出方法。2、字符數(shù)組和字符串的使用。難點(diǎn):通過循環(huán)結(jié)構(gòu)對(duì)數(shù)組元素排序。字符串的存儲(chǔ)特點(diǎn)以及字符串處理函數(shù)。三、實(shí)驗(yàn)內(nèi)容程序1:[題目
1039:倒序]
由鍵盤輸入10
個(gè)整數(shù),倒序輸出。
(數(shù)字間由一個(gè)空格分隔)
[自測(cè)數(shù)據(jù)]
[鍵盤輸入]
11223344556677889917↙
[正確輸出]
17998877665544332211
參考程序:
#include<stdio.h>voidmain(){inta[10];inti;for(i=0;i<10;i++)scanf("%d",&a[i]);for(i=9;i>=0;i--)printf("%d",a[i]);printf("\n");}西安工業(yè)大學(xué)實(shí)驗(yàn)報(bào)告程序2:由鍵盤輸入一個(gè)3×4的矩陣,要求輸出它的轉(zhuǎn)置矩陣。
#include<stdio.h>voidmain(){ inta[3][4],b[4][3],i,j;for(i=0;i<3;i++)for(j=0;j<4;j++){ scanf("%d",&a[i][j]); b[j][i]=a[i][j];}printf("轉(zhuǎn)置矩陣:\n");for(i=0;i<4;i++){ for(j=0;j<3;j++)printf("%d",b[i][j]);printf("\n");}輸出:程序3:編寫程序輸出以下的楊輝三角形。#include<stdio.h>intmain(){ inta[20][20],i,j;for(i=0;i<20;i++) { a[i][0]=1; a[i][i]=1; } for(i=0;i<20;i++)for(j=1;j<i;j++)a[i][j]=a[i-1][j-1]+a[i-1][j];for(i=0;i<11;i++)西安工業(yè)大學(xué)實(shí)驗(yàn)報(bào)告for(j=0;j<=i;j++)printf("%5d",a[i][j]);printf("\n"); } printf("\n");}輸出:討論與總結(jié)通過本次實(shí)驗(yàn)我掌握了一維數(shù)組和二維數(shù)組的定義、初始化、賦值和輸入/輸出方法,字符數(shù)組和字符串的使用,學(xué)會(huì)了通過循環(huán)結(jié)構(gòu)對(duì)數(shù)組元素排序,字符串的存儲(chǔ)特點(diǎn)以及字符串處理函數(shù)。西安工業(yè)大學(xué)實(shí)驗(yàn)報(bào)告專業(yè)機(jī)械設(shè)計(jì)制造及其自動(dòng)化班級(jí)130209姓名陳小彬?qū)W號(hào)130209102實(shí)驗(yàn)課程計(jì)算機(jī)程序設(shè)計(jì)基礎(chǔ)指導(dǎo)教師楊盛泉實(shí)驗(yàn)日期20160429同實(shí)驗(yàn)者實(shí)驗(yàn)項(xiàng)目函數(shù)(一)實(shí)驗(yàn)設(shè)備及器材計(jì)算機(jī)一、實(shí)驗(yàn)?zāi)康?、掌握定義函數(shù)的方法。2、掌握函數(shù)實(shí)參與形參的對(duì)應(yīng)關(guān)系以及值傳遞和地址傳遞的方式。3、掌握函數(shù)的嵌套調(diào)用和遞歸調(diào)用方法。4、掌握全局變量、局部變量、動(dòng)態(tài)變量、靜態(tài)變量的概念和使用方法。5、了解宏定義的方法和文件包含處理。二、實(shí)驗(yàn)重點(diǎn)與難點(diǎn)重點(diǎn):1、掌握定義函數(shù)的方法。2、掌握函數(shù)實(shí)參與形參的對(duì)應(yīng)關(guān)系以及值傳遞和地址傳遞的方式。3、全局變量和局部變量的作用域。難點(diǎn):1、掌握函數(shù)實(shí)參與形參的對(duì)應(yīng)關(guān)系以及值傳遞和地址傳遞的方式。2、函數(shù)遞歸調(diào)用方法的理解。3、變量的作用域。三、實(shí)驗(yàn)內(nèi)容程序1:求n!。#include<stdio.h>doublefac(intx){intj;doubler=1;for(j=1;j<=x;j++)r=r*j;{inti;doublesum;scanf("%d",&i);returnr;}main()西安工業(yè)大學(xué)實(shí)驗(yàn)報(bào)告printf("sum=%f\n",sum);printf("i=%d\n",i);}輸出:程序2:編寫程序,輸出字符串。如:1123581321#include<stdio.h>intmain(){inti;intf[20]={1,1};for(i=2;i<20;i++)f[i]=f[i-2]+f[i-1];for(i=0;i<20;i++){if(i%5==0)printf("\n");printf("%12d",f[i]);}printf("\n");/*return0;*/}輸出:程序3:編寫程序輸出從1800-2020的閏年。#include<stdio.h>intisleap(intyear){if(year%4==0&&year%100!=0||year%400==0)return1;elsereturn0;}voidmain(){西安工業(yè)大學(xué)實(shí)驗(yàn)報(bào)告 for(year=1000;year<2020;year++)if(isleap(year))printf("%d是\n",year);}輸出:程序4:編寫程序,交換兩個(gè)數(shù)#include<stdio.h>voidpriout(ints[2]){ intt; t=s[0];s[0]=s[1];s[1]=t;}voidmain(){ ints[2]={50,90}; priout(s);printf("01s[0]=%d,s[1]=%d\n",s[0],s[1]);}輸出:四、討論與總結(jié)通過本次實(shí)驗(yàn)我學(xué)會(huì)了很多,任何函數(shù)都是由函數(shù)說明和函數(shù)體兩部分組成的。函數(shù)參數(shù)的作用是在主調(diào)函數(shù)和被調(diào)用函數(shù)之間傳遞數(shù)據(jù)。函數(shù)名后面括號(hào)中的變量名稱為形式參數(shù),在調(diào)用函數(shù)時(shí),函數(shù)名后面括號(hào)中的表達(dá)式稱為實(shí)際參數(shù),實(shí)參變量對(duì)形參變量的數(shù)據(jù)傳遞是值傳遞,即單向傳遞,值傳遞是雙向傳遞。西安工業(yè)大學(xué)實(shí)驗(yàn)報(bào)告專業(yè)機(jī)械設(shè)計(jì)制造及其自動(dòng)化班級(jí)130209姓名陳小彬?qū)W號(hào)130209102實(shí)驗(yàn)課程計(jì)算機(jī)程序設(shè)計(jì)基礎(chǔ)指導(dǎo)教師楊盛泉實(shí)驗(yàn)日期20160506同實(shí)驗(yàn)者實(shí)驗(yàn)項(xiàng)目函數(shù)(二)實(shí)驗(yàn)設(shè)備及器材計(jì)算機(jī)一、實(shí)驗(yàn)?zāi)康?、掌握定義函數(shù)的方法。2、掌握函數(shù)實(shí)參與形參的對(duì)應(yīng)關(guān)系以及值傳遞和地址傳遞的方式。3、掌握函數(shù)的嵌套調(diào)用和遞歸調(diào)用方法。4、掌握全局變量、局部變量、動(dòng)態(tài)變量、靜態(tài)變量的概念和使用方法。5、了解宏定義的方法和文件包含處理。二、實(shí)驗(yàn)重點(diǎn)與難點(diǎn)重點(diǎn):1、掌握定義函數(shù)的方法。2、掌握函數(shù)實(shí)參與形參的對(duì)應(yīng)關(guān)系以及值傳遞和地址傳遞的方式。3、全局變量和局部變量的作用域。難點(diǎn):1、掌握函數(shù)實(shí)參與形參的對(duì)應(yīng)關(guān)系以及值傳遞和地址傳遞的方式。2、函數(shù)遞歸調(diào)用方法的理解。3、變量的作用域。三、實(shí)驗(yàn)內(nèi)容程序1:輸出m!/((m-n)!*n!)的值。#include<stdio.h>intfac(intx){inti,f=1;for(i=1;i<=x;i++)f*=i;returnf;}voidmain(){intm,n,c;scanf("%d%d",&m,&n);if(m<=n){c=c/i;printf("c(%d,%d)=%d\n",m,n,c);西安工業(yè)大學(xué)實(shí)驗(yàn)報(bào)告return;}c=fac(m)/fac(n)/fac(m-n);printf("c(%d,%d)=%d\n",m,n,c);}輸出:程序2:值傳遞無返回值。#include<stdio.h>inta=100;voidfun(){printf("a=%d\n",a);}voidmain(){inta=10;fun();{inta=1;printf("a=%d\n",a);}printf("a=%d\n",a);}輸出:程序3:編寫函數(shù),通過鍵盤讀入一個(gè)字符串判斷該字符串是否為回文,若是函數(shù)返回1,否則返回0.如:"ABCBA""ABCCBA"#include<stdio.h>#include<string.h>intfun(char*s){inti,k;k=strlen(s);for(i=0;i<k/2;i++)if(s[i]!=s[k-i-1])return0;return1;}voidmain(){chars[100];西安工業(yè)大學(xué)實(shí)驗(yàn)報(bào)告if(fun(s))printf("%s是回文!\n",s);elseprintf("%s不是回文!\n",s);}輸出:四、討論與總結(jié)通過本次實(shí)驗(yàn)我知道了,變量的作用域的范圍,變量說明方式的不同,其作用域也不同。全局變量,局部變量的作用范圍,在函數(shù)體內(nèi)定義的變量,在本函數(shù)范圍內(nèi)有效,作用域局限于函數(shù)體內(nèi),在函數(shù)外部定義的變量則稱為外部變量。全局變量的作用域,從外部變量的定義位置開始,到本文件結(jié)束。西安工業(yè)大學(xué)實(shí)驗(yàn)報(bào)告專業(yè)機(jī)械設(shè)計(jì)制造及其自動(dòng)化班級(jí)130209姓名陳小彬?qū)W號(hào)130209102實(shí)驗(yàn)課程計(jì)算機(jī)程序設(shè)計(jì)基礎(chǔ)指導(dǎo)教師楊盛泉實(shí)驗(yàn)日期20160513同實(shí)驗(yàn)者實(shí)驗(yàn)項(xiàng)目指針(一)實(shí)驗(yàn)設(shè)備及器材計(jì)算機(jī)一、實(shí)驗(yàn)?zāi)康?、理解指針的概念,掌握指針變量的定義和使用。2、掌握指針變量作為函數(shù)參數(shù)的使用方法。3、能正確使用數(shù)組的指針和指向數(shù)組的指針變量。4、能正確使用字符串的指針和指向字符串的指針變量。5、了解指向指針的指針的概念和使用方法。6。了解指向函數(shù)的指針變量。二、實(shí)驗(yàn)重點(diǎn)與難點(diǎn)重點(diǎn):指針運(yùn)算符*和取地址運(yùn)算符&的理解與使用。指針變量作為函數(shù)的參數(shù)。3、正確使用數(shù)組的指針和指向數(shù)組的指針變量。4、能正確使用字符串的指針和指向字符串的指針變量。難點(diǎn):指針運(yùn)算符*和取地址運(yùn)算符&的理解與使用。2、指針變量作為函數(shù)的參數(shù)。3、數(shù)組的指針和指向數(shù)組的指針變量。三、實(shí)驗(yàn)內(nèi)容程序1:指針的應(yīng)用。#include<stdio.h>voidmain(){ inta[5],*pa,i; for(i=0;i<5;i++) a[i]=i+1; pa=a; for(i=0;i<5;i++) printf("*(pa+%d):%d\n",i,*(pa+i));for(i=0;i<5;i++) printf("*(a+%d):%d\n",i,*(a+i));西安工業(yè)大學(xué)實(shí)驗(yàn)報(bào)告 printf("pa[%d]:%d\n",i,pa[i]);for(i=0;i<5;i++) printf("a[%d]:%d\n",i,a[i]);}輸出:程序2:指針調(diào)用數(shù)組元素。#include<stdio.h>intmain(){ inta[10]; int*p,i;printf("enter10integernumbers:\n");for(i=0;i<10;i++)scanf("%d",&a[i]); for(p=a;p<a+10;p++) printf("%3d",*p);printf("\n"); return0;}輸出:程序3:#include<stdio.h>main()西安工業(yè)大學(xué)實(shí)驗(yàn)報(bào)告 inta; int*pa=&a; a=10;printf("a:%d\n",a);printf("*pa:%d\n",*pa);printf("&a:%x(hex)\n",&a);printf("pa:%x(hex)\n",pa);printf("&pa:%x(hex)\n",&pa);}輸出:四、討論與總結(jié)通過本次實(shí)驗(yàn)我了解了‘*’出現(xiàn)在不同位置,其含義不同。若出現(xiàn)在變量聲明中,則‘*’是類型說明符,其后的變量表示變量為指針類型;若出現(xiàn)在執(zhí)行語句中,則*為指針運(yùn)算符,表示指針變量所指的變量。只能將一個(gè)變量的地址賦值給與其數(shù)據(jù)類型相同的指針變量。西安工業(yè)大學(xué)實(shí)驗(yàn)報(bào)告專業(yè)機(jī)械設(shè)計(jì)制造及其自動(dòng)化班級(jí)130209姓名陳小彬?qū)W號(hào)130209102實(shí)驗(yàn)課程計(jì)算機(jī)程序設(shè)計(jì)基礎(chǔ)指導(dǎo)教師楊盛泉實(shí)驗(yàn)日期20160520同實(shí)驗(yàn)者實(shí)驗(yàn)項(xiàng)目指針(二)實(shí)驗(yàn)設(shè)備及器材計(jì)算機(jī)一、實(shí)驗(yàn)?zāi)康?、理解指針的概念,掌握指針變量的定義和使用。2、掌握指針變量作為函數(shù)參數(shù)的使用方法。3、能正確使用數(shù)組的指針和指向數(shù)組的指針變量。4、能正確使用字符串的指針和指向字符串的指針變量。5、了解指向指針的指針的概念和使用方法。6。了解指向函數(shù)的指針變量。二、實(shí)驗(yàn)重點(diǎn)與難點(diǎn)重點(diǎn):指針運(yùn)算符*和取地址運(yùn)算符&的理解與使用。指針變量作為函數(shù)的參數(shù)。3、正確使用數(shù)組的指針和指向數(shù)組的指針變量。4、能正確使用字符串的指針和指向字符串的指針變量。難點(diǎn):指針運(yùn)算符*和取地址運(yùn)算符&的理解與使用。2、指針變量作為函數(shù)的參數(shù)。3、數(shù)組的指針和指向數(shù)組的指針變量。三、實(shí)驗(yàn)內(nèi)容程序1:用指針進(jìn)行變量的賦值與運(yùn)算。#include<stdio.h>main(){ inta=5,*p=&a,b,*q; a=10; *p=15; q=p; *q=20; b=*q+1; p=&b;printf("a=%d,b=%d,*p=%d,*q=%d\n",a,b,*p,*q);}輸出西安工業(yè)大學(xué)實(shí)驗(yàn)報(bào)告程序2:輸入一個(gè)字符串,按相反次序輸出其中的所有字符。#include<stdio.h>voidmain(){ chara[255],*p=a; printf("輸入一個(gè)字符串:\n"); scanf("%s",a);printf("按相反次序輸入其中的所有字符:\n"); while(*p!=0)p++; p--; for(;p>=a;p--)printf("%c",*p);putchar('\n');}輸出:程序3:輸入一個(gè)一維整型數(shù)組的元素,輸出其中的最大值,最小值和平均值。#include<stdio.h>#defineN10voidmain(){ inta[N],max,min,*p; floataver; printf("輸入10個(gè)整型數(shù):\n"); for(p=a;p<a+N;p++) scanf("%d",p);max=*a;min=*a;aver=0; for(p=a;p<a+N;p++) { if(max<*p)max=*p;if(min>*p)min=*p; aver+=*p; } aver/=10;printf("最大值為:%d\n",max);printf("最小值為:%d\n",min);printf("平均值為:%f\n",aver);西安工業(yè)大學(xué)實(shí)驗(yàn)報(bào)告四、討論與總結(jié)通過本次實(shí)驗(yàn)我收獲很多,針運(yùn)算符*和取地址運(yùn)算符&的理解與使用,指針變量作為函數(shù)的參數(shù),正確使用數(shù)組的指針和指向數(shù)組的指針變量,能正確使用字符串的指針和指向字符串的指針變。二維數(shù)組可以看作是一個(gè)特殊的一維數(shù)組,指向一維數(shù)組元素的指針變量p,p值加1后所指向的數(shù)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度航空運(yùn)輸貨物代理委托及質(zhì)量控制合同3篇
- 2024離婚財(cái)產(chǎn)分割協(xié)議公證與投資分割
- 2024版軟件許可與技術(shù)支持合同
- 二零二五年度股權(quán)激勵(lì)與員工離職補(bǔ)償合同樣本3篇
- 年度飛機(jī)碳剎車預(yù)制件戰(zhàn)略市場(chǎng)規(guī)劃報(bào)告
- 高校二零二五年度實(shí)驗(yàn)室科研人員聘用合同2篇
- 針對(duì)2025年度環(huán)保項(xiàng)目的技術(shù)研發(fā)合作合同3篇
- 2024-2025學(xué)年高中語文第三課神奇的漢字3方塊的奧妙-漢字的結(jié)構(gòu)練習(xí)含解析新人教版選修語言文字應(yīng)用
- 2024-2025學(xué)年高中政治第三單元思想方法與創(chuàng)新意識(shí)第9課第2框用對(duì)立統(tǒng)一的觀點(diǎn)看問題訓(xùn)練含解析新人教版必修4
- 2025年度特色餐飲業(yè)司爐員綜合管理服務(wù)合同3篇
- GB/T 11072-1989銻化銦多晶、單晶及切割片
- GB 15831-2006鋼管腳手架扣件
- 有機(jī)化學(xué)機(jī)理題(福山)
- 醫(yī)學(xué)會(huì)自律規(guī)范
- 商務(wù)溝通第二版第4章書面溝通
- 950項(xiàng)機(jī)電安裝施工工藝標(biāo)準(zhǔn)合集(含管線套管、支吊架、風(fēng)口安裝)
- 微生物學(xué)與免疫學(xué)-11免疫分子課件
- 《動(dòng)物遺傳育種學(xué)》動(dòng)物醫(yī)學(xué)全套教學(xué)課件
- 弱電工程自檢報(bào)告
- 民法案例分析教程(第五版)完整版課件全套ppt教學(xué)教程最全電子教案
- 7.6用銳角三角函數(shù)解決問題 (2)
評(píng)論
0/150
提交評(píng)論