<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      daizybroa

      導航

      作業5

      task1

       1 #include <stdio.h>
       2 #define N 5
       3 
       4 void input(int x[], int n);
       5 void output(int x[], int n);
       6 void find_min_max(int x[], int n, int *pmin, int *pmax);
       7 
       8 int main() {
       9     int a[N];
      10     int min, max;
      11 
      12     printf("錄入%d個數據:\n", N);
      13     input(a, N);
      14 
      15     printf("數據是: \n");
      16     output(a, N);
      17 
      18     printf("數據處理...\n");
      19     find_min_max(a, N, &min, &max);
      20 
      21     printf("輸出結果:\n");
      22     printf("min = %d, max = %d\n", min, max);
      23 
      24     return 0;
      25 }
      26 
      27 void input(int x[], int n) {
      28     int i;
      29 
      30     for(i = 0; i < n; ++i)
      31         scanf("%d", &x[i]);
      32 }
      33 
      34 void output(int x[], int n) {
      35     int i;
      36     
      37     for(i = 0; i < n; ++i)
      38         printf("%d ", x[i]);
      39     printf("\n");
      40 }
      41 
      42 void find_min_max(int x[], int n, int *pmin, int *pmax) {
      43     int i;
      44     
      45     *pmin = *pmax = x[0];
      46 
      47     for(i = 0; i < n; ++i)
      48         if(x[i] < *pmin)
      49             *pmin = x[i];
      50         else if(x[i] > *pmax)
      51             *pmax = x[i];
      52 }

       問題1:找到最大值和最小值;

      問題2:min和max的地址。

       task1.2

       1 #include <stdio.h>
       2 #define N 5
       3 
       4 void input(int x[], int n);
       5 void output(int x[], int n);
       6 int *find_max(int x[], int n);
       7 
       8 int main() {
       9     int a[N];
      10     int *pmax;
      11 
      12     printf("錄入%d個數據:\n", N);
      13     input(a, N);
      14 
      15     printf("數據是: \n");
      16     output(a, N);
      17 
      18     printf("數據處理...\n");
      19     pmax = find_max(a, N);
      20 
      21     printf("輸出結果:\n");
      22     printf("max = %d\n", *pmax);
      23 
      24     return 0;
      25 }
      26 
      27 void input(int x[], int n) {
      28     int i;
      29 
      30     for(i = 0; i < n; ++i)
      31         scanf("%d", &x[i]);
      32 }
      33 
      34 void output(int x[], int n) {
      35     int i;
      36     
      37     for(i = 0; i < n; ++i)
      38         printf("%d ", x[i]);
      39     printf("\n");
      40 }
      41 
      42 int *find_max(int x[], int n) {
      43     int max_index = 0;
      44     int i;
      45 
      46     for(i = 0; i < n; ++i)
      47         if(x[i] > x[max_index])
      48             max_index = i;
      49     
      50     return &x[max_index];
      51 }

       問題1:數組中最大的數字的地址;

      問題2:可以。

      task2

       1 #include <stdio.h>
       2 #include <string.h>
       3 #define N 80
       4 
       5 int main() {
       6     char s1[N] = "Learning makes me happy";
       7     char s2[N] = "Learning makes me sleepy";
       8     char tmp[N];
       9 
      10     printf("sizeof(s1) vs. strlen(s1): \n");
      11     printf("sizeof(s1) = %d\n", sizeof(s1));
      12     printf("strlen(s1) = %d\n", strlen(s1));
      13 
      14     printf("\nbefore swap: \n");
      15     printf("s1: %s\n", s1);
      16     printf("s2: %s\n", s2);
      17 
      18     printf("\nswapping...\n");
      19     strcpy(tmp, s1);
      20     strcpy(s1, s2);
      21     strcpy(s2, tmp);
      22 
      23     printf("\nafter swap: \n");
      24     printf("s1: %s\n", s1);
      25     printf("s2: %s\n", s2);
      26 
      27     return 0;
      28 }

       問題1:80;s1的字節數;s1中的字母與符號數;

      問題2:不能,char類型需用s1[N],且s1不可以這樣改變。

      問題3:是。

      task2.2

       1 #include <string.h>
       2 #define N 80
       3 
       4 int main() {
       5     const char *s1 = "Learning makes me happy";
       6     const char *s2 = "Learning makes me sleepy";
       7     const char *tmp;
       8 
       9     printf("sizeof(s1) vs. strlen(s1): \n");
      10     printf("sizeof(s1) = %d\n", sizeof(s1));
      11     printf("strlen(s1) = %d\n", strlen(s1));
      12 
      13     printf("\nbefore swap: \n");
      14     printf("s1: %s\n", s1);
      15     printf("s2: %s\n", s2);
      16 
      17     printf("\nswapping...\n");
      18     tmp = s1;
      19     s1 = s2;
      20     s2 = tmp;
      21 
      22     printf("\nafter swap: \n");
      23     printf("s1: %s\n", s1);
      24     printf("s2: %s\n", s2);
      25 
      26     return 0;
      27 }

       問題1:地址;s1的大小;字符數;

      問題2:能,定義一個char類型的地址指針,并將原數組輸入為:Learning makes me happy;

      問題3:沒有。

      task3

       1 #include <stdio.h>
       2 
       3 int main() {
       4     int x[2][4] = {{1, 9, 8, 4}, {2, 0, 4, 9}};
       5     int i, j;
       6     int *ptr1;     // 指針變量,存放int類型數據的地址
       7     int(*ptr2)[4]; // 指針變量,指向包含4個int元素的一維數組
       8 
       9     printf("輸出1: 使用數組名、下標直接訪問二維數組元素\n");
      10     for (i = 0; i < 2; ++i) {
      11         for (j = 0; j < 4; ++j)
      12             printf("%d ", x[i][j]);
      13         printf("\n");
      14     }
      15 
      16     printf("\n輸出2: 使用指針變量ptr1(指向元素)間接訪問\n");
      17     for (ptr1 = &x[0][0], i = 0; ptr1 < &x[0][0] + 8; ++ptr1, ++i) {
      18         printf("%d ", *ptr1);
      19 
      20         if ((i + 1) % 4 == 0)
      21             printf("\n");
      22     }
      23                          
      24     printf("\n輸出3: 使用指針變量ptr2(指向一維數組)間接訪問\n");
      25     for (ptr2 = x; ptr2 < x + 2; ++ptr2) {
      26         for (j = 0; j < 4; ++j)
      27             printf("%d ", *(*ptr2 + j));
      28         printf("\n");
      29     }
      30 
      31     return 0;
      32 }

       問題1:指針變量;

      問題2:指針數組。

      task4

       1 #include <stdio.h>
       2 #define N 80
       3 
       4 void replace(char *str, char old_char, char new_char); // 函數聲明
       5 
       6 int main() {
       7     char text[N] = "Programming is difficult or not, it is a question.";
       8 
       9     printf("原始文本: \n");
      10     printf("%s\n", text);
      11 
      12     replace(text, 'i', '*'); // 函數調用 注意字符形參寫法,單引號不能少
      13 
      14     printf("處理后文本: \n");
      15     printf("%s\n", text);
      16 
      17     return 0;
      18 }
      19 
      20 // 函數定義
      21 void replace(char *str, char old_char, char new_char) {
      22     int i;
      23 
      24     while(*str) {
      25         if(*str == old_char)
      26             *str = new_char;
      27         str++;
      28     }
      29 }

       問題1:將字符串中的i替換為*;

      問題2:可以。

      task5

       1 #include <stdio.h>
       2 #define N 80
       3 
       4 char* str_trunc(char* str, char x);
       5 
       6 int main() {
       7     char str[N];
       8     char ch;
       9 
      10     while (printf("輸入字符串: "), gets_s(str) != NULL) {
      11         printf("輸入一個字符: ");
      12         ch = getchar();
      13 
      14         printf("截斷處理...\n");
      15         str_trunc(str, ch);         // 函數調用
      16 
      17         printf("截斷處理后的字符串: %s\n\n", str);
      18         getchar();
      19     }
      20 
      21     return 0;
      22 }
      23 
      24 // 函數str_trunc定義
      25 // 功能: 對字符串作截斷處理,把指定字符自第一次出現及其后的字符全部刪除, 并返回字符串地址
      26 // 待補足...
      27 // xxx
      28 
      29 char* str_trunc(char* str, char x) {
      30     char* p = str;
      31     while (*p != '\0' && *p != x)
      32         p++;
      33 
      34     *p = '\0';
      35 
      36     return str;
      37 }

       問題1:重復出現輸入提示;

      問題2:排除回車符號對輸入時的影響。

       1 #include <stdio.h>
       2 #include <string.h>
       3 #define N 5
       4 
       5 int check_id(const char* str); // 函數聲明
       6 
       7 int main()
       8 {
       9     const char* pid[N] = { "31010120000721656X",
      10                     "3301061996X0203301",
      11                     "53010220051126571",
      12                     "510104199211197977",
      13                     "53010220051126133Y" };
      14     int i;
      15 
      16     for (i = 0; i < N; ++i)
      17         if (check_id(pid[i])) // 函數調用
      18             printf("%s\tTrue\n", pid[i]);
      19         else
      20             printf("%s\tFalse\n", pid[i]);
      21 
      22     return 0;
      23 }
      24 
      25 // 函數定義
      26 // 功能: 檢查指針str指向的身份證號碼串形式上是否合法
      27 // 形式合法,返回1,否則,返回0
      28 int check_id(const char* str) {
      29     // 補足函數實現
      30     // ...
      31   
      32     if (strlen(str) != 18)
      33         return 0;
      34 
      35     for (int i = 0; i < 17; ++i) {
      36         if (str[i] < '0' || str[i]>'9') {
      37             return 0;
      38         }
      39     }
      40 
      41     if (str[17] == 'X')
      42         return 1;
      43     else if (str[17] >= '0' && str[17] <= '9')
      44         return 1;
      45     else
      46         return 0;
      47 }

      task7

       1 #include<stdio.h>
       2 #include<stdlib.h>
       3 #define N 80
       4 void encoder(char* str, int n); // 函數聲明
       5 void decoder(char* str, int n); // 函數聲明
       6 
       7 int main() {
       8     char words[N];
       9     int n;
      10 
      11     printf("輸入英文文本: ");
      12     gets_s(words);
      13 
      14     printf("輸入n: ");
      15     scanf_s("%d", &n);
      16 
      17     printf("編碼后的英文文本: ");
      18     encoder(words, n);      // 函數調用
      19     printf("%s\n", words);
      20 
      21     printf("對編碼后的英文文本解碼: ");
      22     decoder(words, n); // 函數調用
      23     printf("%s\n", words);
      24 
      25     return 0;
      26 }
      27 
      28 /*函數定義
      29 功能:對s指向的字符串進行編碼處理
      30 編碼規則:
      31 對于a~z或A~Z之間的字母字符,用其后第n個字符替換; 其它非字母字符,保持不變
      32 */
      33 void encoder(char* str, int n) {
      34     // 補足函數實現
      35     // ×××
      36 int i;
      37 for (i = 0; str[i] != '\0'; ++i) {
      38     if ((str[i] >= 'A' && str[i] <= 'Z') || (str[i] >= 'a' && str[i] <= 'z')) {
      39         str[i] = str[i] + n;
      40         if ((str[i] >= 'A' && str[i] <= 'Z') || (str[i] >= 'a' && str[i] <= 'z'));
      41         else {
      42             str[i] = str[i] - 26;
      43         }
      44     }
      45 }
      46 }
      47 
      48 
      49 
      50 
      51 /*函數定義
      52 功能:對s指向的字符串進行解碼處理
      53 解碼規則:
      54 對于a~z或A~Z之間的字母字符,用其前面第n個字符替換; 其它非字母字符,保持不變
      55 */
      56 void decoder(char* str, int n) {
      57     // 補足函數實現
      58     // ×××
      59     int i;
      60     for (i = 0; str[i] != '\0'; ++i) {
      61         if ((str[i] >= 'A' && str[i] <= 'Z') || (str[i] >= 'a' && str[i] <= 'z')) {
      62             str[i] = str[i] - n;
      63             if ((str[i] >= 'A' && str[i] <= 'Z') || (str[i] >= 'a' && str[i] <= 'z'));
      64             else {
      65                 str[i] = str[i] + 26;
      66             }
      67         }
      68     }
      69 }

       

       

       

       1 void compare(int argc, char* argv[]);
       2 
       3 int main(int argc, char* argv[]) {
       4     int i;
       5 
       6     for (i = 1; i < argc; ++i)
       7         printf("hello, %s\n", argv[i]);
       8 
       9     return 0;
      10 }
      11 void compare(int argc, char* argv[])
      12 {
      13     int i, j;
      14     char* temp;
      15     for (j = 1; j < argc; j++)
      16     {
      17         for (i = 1; i < argc - j; i++)
      18         {
      19             if (strcmp(argv[i], argv[i + 1]) > 0)
      20             {
      21                 temp = argv[i];
      22                 argv[i] = argv[i + 1];
      23                 argv[i + 1] = temp;
      24             }
      25         }
      26     }
      27 }

       

      posted on 2025-05-19 12:31  孤獨在一方的星  閱讀(8)  評論(0)    收藏  舉報

      主站蜘蛛池模板: 孕交videos小孕妇xx| 日韩精品中文字幕亚洲| 国产一区二区三区十八禁| 久久精品国产99国产精品澳门| 亚洲成人av在线系列| 日韩视频中文字幕精品偷拍| 欧美一区二区三区在线观看| 午夜福利国产精品视频| 日韩成人无码影院| 国产蜜臀久久av一区二区| 亚洲V天堂V手机在线| 国产日韩精品中文字幕| 中国少妇人妻xxxxx| 亚洲aⅴ无码专区在线观看春色| 国产一区二区三区不卡视频| 色偷偷亚洲男人的天堂| 九九热在线视频免费观看| 久久这里有精品国产电影网| 国产激情电影综合在线看| 亚洲精品国产精品乱码不卡| 天天爽夜夜爱| 国产精品伦理一区二区三| 久久精品免视看国产成人| 国产精品午夜福利资源| 黄色亚洲一区二区在线观看 | 国产精品国产三级国产专i| 在线看免费无码的av天堂| 国产亚洲av手机在线观看| 久久久久无码精品国产不卡| 欧美人与禽2o2o性论交| 国产极品美女高潮无套| 色综合色国产热无码一| 国产精品久久久国产盗摄| 好吊妞无缓冲视频观看| 精品国产午夜福利伦理片| 亚洲国产精品无码久久电影| 精品久久久久国产免费| gogogo高清在线播放免费| 精精国产xxxx视频在线| 国产高清精品一区二区三区| 午夜免费无码福利视频麻豆|