第九周 第六章 指针 作业

来源:互联网 发布:c语言windows.h库函数 编辑:程序博客网 时间:2024/05/19 00:07

首先我不得不说我这几个星期我变懒了,之前我都是比较早交作业的。这一章的作业我就做了书本的习题,囧……好啦,不说了,先上题

习题1

//将10数2,4,6,8……20赋给一个数组,然后用指针输出//  By Tin Lin# include <iostream>using namespace std ;int main (){int a[10] , * p ;for (int i = 0 ; i < 10 ; i++)a[i] = i * 2 + 2 ;for (p= a ; p < a + 10 ; p++) cout << * p << "\t"  ;    cout << endl ;    return 0;}


习题2

//输入一个大写字母,并用自定义的lower()函数实现转换成小写字母// By Tin Lin#include <iostream>using namespace std;void lower(char *p ) ;int main(){    char pt ;    cout << "请输入一个大写字母--" ;    cin >> pt ;    lower(&pt) ;     cout << "对应的小写字母为 --"<< pt << endl ;    return 0;}void lower(char *p){    if (*p >= 'A' && *p<='Z')        *p = *p + 32 ;}

习题3

// 习题3 输入一个含空格的字符串,输出删除空格以后的字符串//By Tin Lin#include <iostream>using namespace std;int main(){    char ch[30] , *p ;    cout << "请输入一个含空格的字符串 --" ;    cin.get(ch , 30) ;    p = ch ;cout << "删除空格以后的字符串为--" ;    for (; *p != '\0' ; p++)     {        if (*p != ' ')            cout  << * p ;    }    cout << endl ;    return 0;}

习题4

//习题6.4当输入整数1-12(月份号)时,输出该月的英文名称,输出其他整数时结束程序//用指针数组处理//  By Tin Lin# include <iostream>using namespace std ;int main (){char * month[12] = {"January","February","March","April","May","June","July","August","September","October","Noverber","December"} ;int num ;cout << "请输入一个数字: " ;cin >> num ;if (num >=1 && num <=12)cout << "该月的英文名称:" <<month[num-1] << endl;else cout << "输入有误,程序结束" << endl ;return 0 ;}


习题5

//习题6.5分别使用指针数组和二级指针输入、输出一个二维整形数组//By Tin Lin# include <iostream>using namespace std ;int main (){int a[3][4] , *p[3] , **pp;int i , j ;p[0] = a[0] ;p[1] = a[1] ;p[2] = a[2] ;cout << "请输入:" << endl ;for( i = 0; i < 3 ; i++)for( j = 0; j < 4 ; j++){cout << "a[" << i << "][" << j << "]=" ;cin >> *(p[i] + j) ;}cout << "用指针数组输出为:"  << endl  ;for(int n = 0; n < 3 ; n++)for(int m = 0 ; m < 4 ; m++){cout << "a[" << n << "][" << m << "]=" ;cout << *(p[n] + m) << endl ;}pp = p ;cout << "用二级指针输出为:"  << endl  ;for(i = 0 ; i < 3 ; i++)          for(j = 0 ; j < 4 ; j++)          {              cout << "a[" << i << "][" << j << "]=";              cout << *(*(pp+i)+j) << endl;  }return 0 ;}


习题6

//习题6.6 输入一个3*4的矩阵,编写函数求其最大值//By Tin Lin# include <iostream>using namespace std ;int max(int *s , int n) ;int main (){int a[3][4] , maximun ;cout << "请输入:" << endl ;int i , j ;for( i = 0; i < 3 ; i++)for( j = 0; j < 4 ; j++){cout << "a[" << i << "][" << j << "]=" ;cin >> a[i][j] ;}maximun = max( &a[0][0] , 12) ;cout << "最大值为:" << maximun << endl ;return 0 ;}int max(int * s , int n)  {      int temp = * s ;      for(int i = 0 ; i < n ; i++)  //二维数组元素也是连续存放的,所以……        if(s[i] > temp)              temp = s[i] ;      return temp ;  }  





0 0
原创粉丝点击