zoukankan      html  css  js  c++  java
  • 2019春第七周作业

    这个作业属于哪个课程 C语言程序设计II
    这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/MS/homework/2940
    我在这个课程的目标是 掌握指针与数组以及地址的关系,用二维数组解决问题
    这个作业在哪个具体方面帮助我实现目标 帮助我更好的理解了指针,地址还有数组之间的关系
    参考文献 C语言程序设计II

    一、本周完成作业

    基础作业1

    1.实验代码

    #include <stdio.h>
    void fun( char *p );
    int main()
    {
     char chrstr[64];  int d ;
      gets(chrstr);
      d=strlen(chrstr) ;
      chrstr[d] = ' ' ;
      chrstr[d+1] = 0 ;
      fun(chrstr);
      printf("
    After changing:   %s
    ", chrstr);
    return 0;
    }
    void fun( char *p )
    {
    for(int i=0;*p!=0;i++,p++){
    if(*p==' '&&*(p-1)>'a'&&*(p-1)<'z'){
    *(p-1)=*(p-1)-'a'+'A';
    }
    }
    }

    2.设计思路

    3.本题调试过程碰到的问题及解决办法

    主要了解了通过ASCII值来转换大小写,基本没什么问题

    4.运行结果截图

    基础作业2

    1.实验代码

    #include<stdio.h>
    int main(void)
    {
    char commodity[10][20] = {"Table-water","Table-water","Table-water","Coca-Cola","Milk","Beer","Orange-Juice","Sprite","Oolong-Tea","Green-Tea"};
    int money[100];
    int num[10];
    int count[11]={0,0,0,0,0,0,0,0,0,0,0};
    int sum=0, i, price=0;
    scanf("%d", &money[0]);
    for(i=1;money[i-1]!=-1;i++)
    {
    scanf("%d", &money[i]);
    sum=sum+money[i-1];
    }

    scanf("%d", &num[0]);
    for(i=1;num[i-1]!=-1;i++)
    {
    scanf("%d", &num[i]);
    }
    for(i=1;num[i-1]!=-1;i++)
    {
    switch(num[i-1])
    {
    case 1: price=price+1; break;
    case 2: price=price+1; break;
    case 3: price=price+1; break;
    case 4: price=price+2; break;
    case 5: price=price+2; break;
    case 6: price=price+3; break;
    case 7: price=price+3; break;
    case 8: price=price+3; break;
    case 9: price=price+4; break;
    case 10: price=price+4; break;
    default: break;
    }
     
    }
    if(price>sum)
    printf("Insufficient money");
     
    else
    {
    printf("Total:%dyuan,change:%dyuan ", sum, sum-price);

    for(i=0;num[i]!=-1;i++)
    {
    switch(num[i])
    {
    case 1: count[1]++; break;
    case 2: count[2]++; break;
    case 3: count[3]++; break;
    case 4: count[4]++; break;
    case 5: count[5]++; break;
    case 6: count[6]++; break;
    case 7: count[7]++; break;
    case 8: count[8]++; break;
    case 9: count[9]++; break;
    case 10: count[10]++; break;
    default: break;
    }
     
    }
    for(i=1; i<=10; i++)
    {
    if(count[i] == 0)
    {
    continue;
    }
    else
    printf("%s:%d;",commodity[i-1],count[i]);
    }
    }
    return 0;
    }

    2.设计思路

    3.本题调试过程碰到的问题及解决办法

    感觉太难了,请教室友一起解决的

    4.运行结果截图

    预习作业

    1.实验代码

    #include<stdio.h>
    void delchar(char *str,char c);
    struct char1{
    char str[10][30];
    }q;
    int main(void)
    {
    struct char1 *p;
    p=&q;
    int repeat,i=0;
    scanf("%d ",&repeat);
    for(i=0;i<repeat*2;i++){
    gets(p->str[i]);
    }
    for(i=0;i<repeat*2;i++){
    if(i%2==1){
    delchar(p->str[i-1],p->str[i][0]);
    printf(" ");
    }
    }
    }
    void delchar(char *str,char c)
    {
    printf("result: ");
    while(*str!=''){
    if(*str!=c){
    printf("%c",*str);
    }
    str++;
    }
    }

    2.设计思路

    3.本题调试过程碰到的问题及解决办法 

    输入字符串后的回车会被当作一个字符,但是gets()输入不进去等等一系列问题,还是要靠自己百度和请教别人,虚心学习

    4.运行结果截图

    挑战作业

    太难不会没写

    学习感悟

    总之就是一句话,感觉太难了,而且作业每次都没有讲解,不会的还是不会,自己查资料也查不出什么来

    结对编程优缺点

    优点:人多力量大嘛,可以取长补短

    缺点:每个人的思路想法都不一样,有时候会产生意见分歧

  • 相关阅读:
    TCP的核心系列 — SACK和DSACK的实现(一)
    Linux2.6中的Slab层
    UVA 11549 Calculator Conundrum (Floyd判圈算法)
    2013第四届蓝桥杯决赛Java高职高专组题目以及解法答案
    hdu-Common Subsequence
    UVA 10869
    【Struts2学习笔记(3)】至Action注入属性值
    【winows7+android-ndk-r9+Cygwin 】cocos2dx 2.*游戏移植Android平台完全手册
    Ubuntu 14.04 64位字体美化(使用黑文泉驿)
    Android Fragment——详细解释
  • 原文地址:https://www.cnblogs.com/lyp82ndl/p/10698468.html
Copyright © 2011-2022 走看看