#include math.h
創(chuàng)新互聯(lián)建站是一家專業(yè)提供白沙黎族企業(yè)網(wǎng)站建設(shè),專注與成都網(wǎng)站制作、網(wǎng)站設(shè)計(jì)、外貿(mào)網(wǎng)站建設(shè)、HTML5、小程序制作等業(yè)務(wù)。10年已為白沙黎族眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)網(wǎng)絡(luò)公司優(yōu)惠進(jìn)行中。
int primeNum(int p)
{
int i, q;
/* Negative number is not a prime */
if (p 0)
return 0;
q = (int) sqrt(p);
for (i = 2; i q; i++)
if ((p % i) == 0)
return 0;
/* No factor of p is found */
return 1;
}
/*原理::
從2-sqrt(x)的數(shù)中看是否有可以整除的, 如果沒有, 則為素?cái)?shù).
*/
你只需要按那個(gè)模版就行,那些內(nèi)容就改成你的作業(yè)
班級(jí): 學(xué)號(hào): 姓名:
實(shí)驗(yàn)9 指針
一、實(shí)驗(yàn)?zāi)康?/p>
(1)掌握指針概念,并定義與使用它。
(2)使用數(shù)組的指針和指向數(shù)組的指針變量。
(3)使用字符串的指針和指向字符串的指針變量。
二、實(shí)驗(yàn)內(nèi)容
1. 將一個(gè)3*3的矩陣轉(zhuǎn)置,用函數(shù)實(shí)現(xiàn)。
2. 有n個(gè)人圍成一圈,順序排號(hào)。從第一個(gè)人開始報(bào)數(shù)(1~3),凡報(bào)到3的人退出,問第幾號(hào)的人能留下。
三、實(shí)驗(yàn)環(huán)境
硬件:(1)學(xué)生用微機(jī)
(2)多媒體實(shí)驗(yàn)教室
軟件:(1)Windows XP 中文操作系統(tǒng)
(2)VC++ 6.0
四、實(shí)驗(yàn)結(jié)果
程序1:
#includestdio.h
void main()
{
void move(int *pointer);
int a[3][3],*p,i;
printf("input marix:\n");
for(i=0;i3;i++)
scanf("%d %d %d",a[i][0],a[i][1],a[i][2]);
p=a[0][0];
move(p);
printf("matrix:\n");
for(i=0;i3;i++)
printf("%d %d %d\n",a[i][0],a[i][1],a[i][2]);
}
void move(int *pointer)
{
int i,j,t;
for(i=0;i3;i++)
for(j=i;j3;j++)
{
t=*(pointer+3*i+j);
*(pointer+3*i+j)=*(pointer+3*j+i);
*(pointer+3*j+i)=t;
}
}
程序2:
#includestdio.h
void main()
{
int i,k,m,n,num[50],*p;
printf("input num of person:");
scanf("%d",n);
p=num;
for(i=0;in;i++)
*(p+i)=i+1;
i=0;
k=0;
m=0;
while(mn-1)
{
if(*(p+i)!=0)k++;
if(k==3)
{
*(p+i)=0;
k=0;
m++;
}
i++;
if(i==n)i=0;
}
while(*p==0)p++;
printf("the last num is %d\n",*p);
}
結(jié)果1:(就是程序運(yùn)行之后出現(xiàn)的框,截圖后粘貼這里)
結(jié)果2:
五、總結(jié):
通過這個(gè)實(shí)驗(yàn)的學(xué)習(xí), 基本掌握了指針的基本用法。
只是個(gè)例子,不可照抄。
實(shí)驗(yàn)內(nèi)容與要求:
[實(shí)驗(yàn)內(nèi)容]
1、 通過本試驗(yàn)初步培養(yǎng)計(jì)算機(jī)邏輯解題能力。熟練掌握賦值語句和if語句的應(yīng)用;掌握switch多路分支語句和if嵌套語句的使用
2、 將前期所學(xué)習(xí)到的基本數(shù)據(jù)類型、運(yùn)算符和表達(dá)式等程序設(shè)計(jì)基礎(chǔ)知識(shí)運(yùn)用于具體的程序設(shè)計(jì)。
3、 進(jìn)一步熟練掌握輸入輸出函數(shù)scanf, printf和getchar的使用,熟悉math.h中常用數(shù)學(xué)函數(shù)的使用方法
4、 掌握循環(huán)語句的應(yīng)用方法。
5、 了解隨機(jī)數(shù)生成函數(shù)。
[實(shí)驗(yàn)要求]
在規(guī)定期限獨(dú)立完成實(shí)驗(yàn)內(nèi)容
1、 提交實(shí)驗(yàn)報(bào)告(電子版)
2、 提交相應(yīng)源程序文件(文件名 EX6_x姓名.c, 如EX6_1彭健.c)
3、 要求從簡(jiǎn)單到復(fù)雜,后面的要求均在前面的基礎(chǔ)上進(jìn)行修改,前六題,每題均需要保留各自的程序,六題以后,每題均在前一題基礎(chǔ)上修改,保留最后一個(gè)程序即可(如做到第九題,則保留EX6_9姓名.c,做到第11題,則保留ex6_11姓名.c)
二、實(shí)驗(yàn)原理和設(shè)計(jì)方案:
1、函數(shù)頭的選則,while循環(huán)語句,switch(case)語句,條件表達(dá)式,if else條件語句,自增運(yùn)算符,設(shè)置復(fù)雜變量,輸出隨機(jī)操作數(shù)。
2、 變量要有分?jǐn)?shù)變量和等級(jí)變量,要有選擇算法題數(shù)的變量和計(jì)算正確與否的變量,要有隨機(jī)輸出的兩個(gè)操作數(shù)變量和自己按運(yùn)算符號(hào)輸入結(jié)果的變量,最后還有判斷是否要進(jìn)行的變量字符。中間結(jié)果有選擇運(yùn)算符的switch()和分?jǐn)?shù)等級(jí)的switch()和錯(cuò)題對(duì)題的自增和選擇運(yùn)算符計(jì)算的自增。
3、 問題的分析方法:先考慮設(shè)置整形變量和字符變量,考慮到要不斷循環(huán)計(jì)算,選擇用while語句來循環(huán)。在循環(huán)體中,將前面的輸出提示運(yùn)算符,和自行選擇運(yùn)算符、答案及輸出隨機(jī)操作數(shù)完成。再用switch語句對(duì)選擇的運(yùn)算符進(jìn)行判斷,并用變量進(jìn)行自增運(yùn)算,計(jì)算出錯(cuò)題于對(duì)題個(gè)數(shù)和選擇了那種運(yùn)算符號(hào)。在循環(huán)體最后用if else語句來判斷是否繼續(xù)執(zhí)行還是跳出循環(huán)。最后根據(jù)自增計(jì)算的結(jié)果和公式進(jìn)行分?jǐn)?shù)計(jì)算,并用switch語句來是想等級(jí)的制定。
三、源代碼
#include
#include
#include
void main()
{
..........
}
四、試驗(yàn)結(jié)果和啟發(fā)
因?yàn)檩斎難要繼續(xù)循環(huán),所以選擇用while語句。在while語句中要結(jié)合前面的按提示計(jì)算,并嵌套switch語句并用條件表達(dá)式,來計(jì)算結(jié)果正確與否,計(jì)算的題型是什么。最后再用switch語句來完成分?jǐn)?shù)等級(jí)的判斷。
五、實(shí)驗(yàn)體會(huì):
描述自己在編程或程序編譯運(yùn)行中遇到的難點(diǎn)和問題及解決的辦法。