Форумы-->Форум для внеигровых тем-->
Автор | Програмирование. Сишка. Структуры. |
Всех с праздником!
Не пойму, в чем проблемы моей проги? КОгда заношу первый раз даные в таблицу, то некоректно заносятся, и нету предложения для имени, чтобы занести, со второго раза все окей.
Помогите кто знает. Вроде сижу пол часа и не могу понять.
#include <stdio.h>
#include <conio.h>
#define N 10
int main()
{
struct stud{
char name[30];
int pik;
char stat[10];
char adress[50];
} student[N];
int i=0,index,kil,num=1;
printf("\t Vveditb kilkictb 3anuciv - ");
scanf("%d",&kil);
while (i<kil){
printf("\t Imya - ");
gets(student[i].name);
printf("\t Pik - ");
scanf("%d",&student[i++].pik);
getchar();
printf("\t Ctatb - ");
gets(student[i].stat);
printf("\t Adpeca - ");
gets(student[i].adress);
printf("\t\t\t HactynHa kHura:\n");
}
printf("\t\t\t Bawa tablucya: \n");
for(index=0;index<i;index++,num++)
printf(" %d \t %20.s \t %d \t %10.s \t %35.s \n\n\n",num,
student[index].name,student[index].pik,student[index].stat,
student[index].adress);
getchar();
return 0;
} | йопта ето ж си, я уже благополучно забыла этот говноязык, но судя по проге 1-ый курс института, задачки типа из числа n найдите какуюто фигную, а вообще нашел где спрашиать, тут же одно школие и задроты со средним образованием | для DevilinaNewDres:
ну так ты помоги, раз умнее их.
я просто хз где ошибка7 вроде все верно. мб борланд идиотский и глючитю | int i=0 | для visatrox:
и что? если 1 поставить, то еше хуже | i++
Не сильно вникал, но походу просто счетчик записей структуры инкриминируется в середине, а надо в самом конце цикла. | для Просветленный:
не понял)
он со второй записи отлично рабоатет.
и как исправить? | Что не понял, ты начинаешь писать в 0 запись, а потом последи цикла i++ и ты уже в 1 запись пишешь. i++ должно стоять в конце цикла, тогда заработает) | вообще запускай в пошаговом и смотри в каком месте у тебя не так работает | для DevilinaNewDres:
говноязык
нормальный язык, не гони
ща подумаем... | для Просветленный:
я getchar(); добавил после printf("\t Vveditb kilkictb 3anuciv - ");
scanf("%d",&kil);
эта ошибка пропала.
если убрать ++, то нету остановки, все время просит еще одну.
если оставить ++, то после него нету 3 и 4 пункта в первом выводею
где ты предлагаеш ++ поставить? после адресы? | для Просветленный:
да, после адресы - пошло. спс чувак) | кинь ему бабла, не будь неблагодарной свинотой | а блок схема возможна к структурам или нет?оО | Вот еще не могу сделать одно.
Ввести 2 масива с клавы. Отсортировать их. Сделать третйи масив с этих двуъ с отсортированными данными.
2 я сделал, а как обьеденить, чтоб там было отсортирвоано хз.
Подскажите кто то.
#include <stdio.h>
#include <conio.h>
#define N 100
int main ()
{
int n,i,j,temp,n1,i1,j1,temp1;
double mas[N],mas1[N];
printf("\t Vveditb kilkictb elemeHtiv - ");
scanf("%d",&n);
printf("\n\t Vveditb elemeHtu Macuvy :");
for (i=0;i<n;i++)
{
scanf("%lf",&mas[i]); // 3aHocumo daHi v Macuv
}
for(i=0;i<n;i++){
for(j=0;j<n-i-1;j++){
if (mas[j]>mas[j+1]){
temp=mas[j];mas[j]=mas[j+1];mas[j+1]=temp;
} //coptyem eleMeHTu
}
}
for (i=0;i<n;i++)
printf(" \t %5.3lf",mas[i]); // VuvoduMo Macuv
printf("\n\t Vveditb kilkitb eleMeHtiv dpyroro macuvy - ");
scanf("%d",&n1);
printf("\n\t Vveditb eleMeHtu dpyroro Macuvy: \n");
for(i1=0;i1<n1;i1++){
scanf("%lf",&mas1[i1]);
}
for(i1=0;i1<n1;i1++){
for(j1=0;j1<n1-i1-1;j1++){
if(mas1[j1]>mas1[j1+1]){
temp1=mas1[j1];mas1[j1]=mas1[j1+1];mas1[j1+1]=temp1;
}
}
}
for(i1=0;i1<n1;i1++){
printf(" \t %5.3lf",mas1[i1]);
}
printf("EleMeHtu tpetboro Macuvy: \n");
getch();
return 0;
} | тема закрыта by bornINUkraine (2012-04-15 16:54:51) |
---|
К списку тем
|