2018上C語言程序設計(高級)作業-第1次作業
阿新 • • 發佈:2018-03-25
alt wid 小數 keyword earch 數組 data can 計算
一.6-1 計算兩數的和與差
1.設計思路:
1)認真讀題,弄清題目已知信息;
2)理清思路,整理組織答案;
3)輸出提交;
4)流程圖如下:
2.實驗代碼如下:
viod sum_diff(float op1,float op2,float *pusm,float *pdiff) { *pusm=op1+op2; *pdiff=op1-op2; }
3.本題調試過程碰到問題及解決辦法
主函數定義多加了“;”,當時為了方便是在題目中的接口定義中粘貼過來的,沒留意後面多加了個分號。
6-2拆分實數的整數與小數部分
1.設計思路:
1)認真讀題,弄清題目已知信息;
2)理清思路,整理組織答案;
3)輸出提交;
4)流程圖如下:
2.實驗代碼如下:
int search( int list[], int n, int x ) { int i; for(i=0;i<n;i++) { if(list[i]==x) return i; } return -1; }
3.本題調試過程碰到問題及解決辦法:
無
二.6-1在數組中查找指定元素
1.設計思路:
2.實驗代碼如下:
int search( int list[], int n, int x ) { int i; for(i=0;i<n;i++) { if(list[i]==x) { return i; } } return -1; }
3.本題調試過程碰到問題及其解決方法
無
6-2.找最大值及其坐標
1.流程圖如下:
2.實驗代碼如下:
int fun(int *a,int *b,int n) { int i; int max=a[0]; for(i=0;i<n;i++) { if(max<a[i]) { max=a[i]; *b=i; } } return max; }
3.本題調試過程碰到問題及其解決方法
三.6-1最小數放前最大數放後
1.設計思路:
2.實驗代碼如下:
void input(int *arr,int n) { int i; for(i=0;i<n;i++) { scanf("%d",&arr[i]); } } void max_min(int *arr,int n) { int i,max,m1,min,m2,t; max=arr[0],m1=0,min=arr[0],m2=0; for(i=0;i<n;i++) { if(max<arr[i]) { max=arr[i]; m1=i; } if(min>arr[i]) { min=arr[i]; m2=i; } } t=arr[m1];arr[m1]=arr[n-1];arr[n-1]=t; t=arr[m2];arr[m2]=arr[0];arr[0]=t; } void output(int *arr,int n) { int i; for(i=0;i<n;i++) { printf("%3d",arr[i]); } }
3.本題調試過程碰到的問題及其解決方法
6-2指針選擇法排序
1)設計思路:
2)實驗代碼如下:
void sort(int *x,int n) { int max,m,i,j,t; for(i=0;i<n-1;i++) { max=x[i],m=i; for(j=i+1;j<n;j++) { if(max<x[j]) { max=x[j]; m=j; } } t=x[m];x[m]=x[i];x[i]=t; } }
3)本題調試過程碰到的問題及其解決方法
四、6-1判斷回文字符串
1.思路方法:
1)
2)流程圖如下:
不會
2.實驗代碼如下:
bool palindrome( char *s ) { int i,n,k,j; n=strlen(s); i=0,j=n-1; for(i=0,j=n-1;i<j;i++,j--) { if(s[i]!=s[j]) { break; } } if(i<j) return false; else return true; }
3.本題調試過程碰到的問題及其解決方法
很多
6-2 使用函數實現字符串部分復制
1.設計思路:
2.流程圖:不會弄
3.實驗代碼如下:
void strmcpy( char *t, int m, char *s ){ int i,j,n; strcpy(s, t); n = strlen(s); for(i=m-1;i>0;i--){ for(j=i;j<n;j++){ s[j-1]=s[j]; } } s[n-m+1]=‘\0‘; }
五、知識總結:
流程圖畫的不太好,可能會有錯誤,後面還有幾道流程圖不會弄。PTA對我來說是很難的一門科目,第一學期就是勉強過關,第二學期得加把勁了。
六、圖表
日期 | 博客 | 代碼 |
3.11 | 第0次作業 | 0 |
3.16 | 0 | 0 |
3.17 | 0 | 0 |
3.18 | 0 | 0 |
3.19 | 0 | 0 |
3.20 | 0 | 0 |
3.21 | 0 | 0 |
3.22 | 0 | 0 |
3.23 | 0 | 0 |
3.24 | 0 | 0 |
3.25 | 第一次作業 | 0 |
---恢復內容結束---
2018上C語言程序設計(高級)作業-第1次作業