Хелпикс

Главная

Контакты

Случайная статья





Варианты заданий см. в файле варианты.doc.



Варианты заданий см. в файле варианты.doc.

If/else + switch

1. Перевести из математического выражения в программу

a)       b) c)

d) e) f)

2. Вычислить чему равно с при данных a и b. Чему будет равно c, если убрать красные фигурные скобки? Нарисовать схему алгоритма для обоих случаев.

int a=A,b=B,c;

c=4;

if (a|b>20 && a&b<10)

{

if(a^b>15)

       c=5;

}

else

{

c=6;

}

3. Вычислить чему равно с при данных a и b. Чему будет равно c, если убрать все команды break? Нарисовать схему алгоритма для обоих случаев.

int a=A,b=B,c;

switch(a)

{

case 0:case 10:case 12:case 14:case 16:

c=a|b; break;

case 1:case 5:case 7:case 9:case 11:

c=a&b; break;

case 2:case 6:case 8:case 17:

c=a^b; break;

default:

c=a<<b; break;

}


For, while, do/while + continue, break

4. Нарисовать схему алгоритма и провести минимум 10 итераций цикла (если выход из цикла не произойдет раньше).

a)

int a=A,b=B,c=C,d=0;

for (a=0;(a^b)!=0;a++)

{

if(a&c) continue;

if(!c) break;

d++;

}

 

b)

int a=A,b=B,c=C,d=0;

while(a^b)

{

if(!(a&d)) continue;

if(!c) break;

c ^= a;

if(b&c) c |= b;

a=d++;

}

 

c)

int a=A,b=B,c=C,d=0;

do{

if(!c) continue;

if(c^b) break;

c ^= a;

if(a&c) c |= a;

a=--d;

}while(a^b)


Строки

5. Нарисовать схему алгоритма и объяснить, что делает программа.

a)

void main()

{

char stroka[100],c;

int i,j;

puts("Введите строку");

gets(stroka);

for(i=0,j=strlen(stroka)-1;i<j;i++,j--)

{

       c=s[i];

       s[i]=s[j];

       s[j]=c;

}

puts("Результат");

puts(stroka);

}

b)

void main()

{

char stroka[100];

int n;

puts("Введите строку");

gets(stroka);

for(n=strlen(stroka)-1;n>=0;n--)

       if(stroka[n]!=' ' && stroka[n]!='\t')

             break;

stroka[n+1]='\0';

puts("Результат");

puts(stroka);

}

 

c)

void main()

{

char stroka[100],podstroka[100];

int i,j,k;

puts("Введите строку");

gets(stroka);

puts("Введите подстроку");

gets(podstroka);

for(i=0;stroka[i]!='\0';i++)

{

       for(j=i,k=0;podstroka[k]!='\0' && stroka[j]==podstroka[k];j++,k++);

       if(k>0 && podstroka[k]=='\0')

       {

             printf("%d",i);

             break;

       }

}

}




  

© helpiks.su При использовании или копировании материалов прямая ссылка на сайт обязательна.